前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网络基础

网络基础

作者头像
晚上没宵夜
发布2022-05-09 21:10:16
5360
发布2022-05-09 21:10:16
举报

网络基础确实不熟悉,有点难度,不过还是多看就好

1. OIS七层参考模型

应用层

通过应用进程间的交互完成网络应用。

应用层协议定义的是应用进程间的通信和交互的规则,常见有HTTP、DNS、SMTP、POP3

表示层

将应用程序的信息转换成适合网络传输的格式。

比如编码问题,HTML,XML,MiME

会话层

连接的管理,何时数据发送和分割。

并无实际传输作用,首部记录数据的发送顺序

传输层

在进程之间的通信提供通用的数据传输服务。

无需在路由器上处理,没有到达会重试,确保数据到达,传输层和网络层配合才能实现可靠传输。协议有TCP / UDP

网络层

将数据传送到目的地,负责寻址和路由选择。

IP属于分组交换,但不具备重发机制,属于非可靠协议

数据链路层

负责相邻节点的数据传输,分数据帧发送。

帧包括数据和必要的控制信息(同步、地址、差错信息)

物理层

比特流和电信号的转换,及透明比特流的传输。

屏蔽传输介质和物理设备的差异

2. 分组交换

电路交换:独占信道,空闲时被独占也不能发送数据

报文交换:报文越大,时延越大。且出错得全部重发

分组交换:分割成小数据包,共享同一条信道,提高效率

3. TCP / UDP 的区别

TCP:面向连接、可靠字节流传输(各种控制)、所以需资源多、传输效率相比慢 场景使用:文件、邮件、登录 UDP:无连接、不可靠数据报、所需资源少、传输效率快、但细微处理都交给上层 场景使用:语音、视频、直播

TCP或UDP要用到操作系统提供的类库,即套接字

一个通信由五个标识唯一确定:目的IP,源IP,目标端口,源端口,协议号

4. 常见端口号

TCP/UDP可同端口,因为接收数据后交由不同的处理程序处理

  • 21:ftp
  • 22:SSH
  • 23:telnet
  • 25:smtp
  • 53:DNS
  • 110:pop3
  • 3306:mysql
  • 8080:tomcat
  • 80:http
  • 443:https
  • 6379:redis
  • 5672:rabbitMQ

5. TCP协议如何保证可靠传输

  • 序列号 + 确认应答号:是否重复接收和是否收到消息
  • 校验和:TCP保持首部和数据的检验和,确保端到端的数据正确性
  • 超时重传:发送数据后,没有收到确认应答则重发这个分组
  • 连接管理:三次握手和四次挥手
  • 流量控制:发送不超过接收端决定的窗口大小,防止高负荷下接收端的拒收而触发重传机制
  • 拥塞控制:对发送的数据大小进行控制(选择小的拥塞窗口或接收窗口),防止本来拥塞的网络来一个大的数据
  • ARQ协议(自动重传请求):包括停止等待ARQ协议和连续ARQ协议
    • 停止等待协议:发完一个分组就停止发送,等待确认应答。超时未收到确认应答,则需要重传,直到接收到应答
    • 停止等待协议:若接收收到重复分组(序列号),则丢弃,但还要发送确认应答
      • 有个超时计时器,比分组传输的平均往返时间更长一些
    • 连续ARQ:窗口控制,累计收到同个序列号才进行重发(高速重发)

6. 浏览器输入url回车键发生了什么?

  • DNS解析:通过DNS获取域名对应的IP
  • TCP连接:三次握手建立连接
  • 发送HTTP请求
  • 服务器处理请求并返回响应
  • 浏览器解析渲染页面
  • 连接结束:四次挥手

其中:

TCP:与服务器三次握手建立TCP连接

IP:建立连接的发送数据在网络层使用IP协议

OPSF:IP在路由选择时使用

ARP:路由与服务器通信时需要MAC

HTTP:使用网页用到HTTP协议

7. 补充

  • 数据链路的分帧有最大传输单位 MTU ,为了分组交换提高效率(以太网为1500字节,ATM为9180字节),那么数据链路层就限制了IP数据包大小,IP数据报需要分片,同理IP对上层也需要限制,最大为MSS,TCP需要分段
  • ARP:知道IP后,相邻网络需要知道MAC,那么广播ARP包,对应IP的主机将自己MAC地址作为ARP响应
  • NAT:私有地址访问外网转为全局IP,出网时用5个标识映射唯一连接

8. 各种首部

数据链路层的,数据帧:

  • FCS:帧检测序列,检测全部(比如CRC循环校验码)

网络层的,IP数据报:IPV4

  • 首部校验和:只校验首部

传输层的,TCP,UDP数据段:

  • 校验和:校验全部,数据篡改数据链路可以防止。校验和防止路由器内存或程序漏洞导致的错误

参考: 《图解TCP/IP》

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-06-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. OIS七层参考模型
    • 应用层
      • 表示层
        • 会话层
          • 传输层
            • 网络层
              • 数据链路层
                • 物理层
                • 2. 分组交换
                • 3. TCP / UDP 的区别
                • 4. 常见端口号
                • 5. TCP协议如何保证可靠传输
                • 6. 浏览器输入url回车键发生了什么?
                • 7. 补充
                • 8. 各种首部
                相关产品与服务
                数据传输服务
                腾讯云数据传输服务(Data Transfer Service,DTS)可帮助用户在业务不停服的前提下轻松完成数据库迁移上云,利用实时同步通道轻松构建高可用的数据库多活架构,通过数据订阅来满足商业数据挖掘、业务异步解耦等场景需求。同时,DTS 还提供私有化独立输出版本 DTS-DBbridge,支持异构数据库和同构数据库之间迁移和同步,可以帮助企业实现完整数据库迁移(如 Oracle)。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档