《图解TCP/IP》读书笔记(二)
2018-05-14 本文已影响19人
凉拌姨妈好吃
网络层
- IP协议:跨越网络传送数据包,不具有重发机制,属于非可靠性传输协议。
- ICMP:当IP数据包在发送过程中无法到达对端,需要给发送端发送通知。ICMP就是为了这个功能而制定的,也可用为诊断网络的健康状况。
- ARP 从分组数据包的IP地址中解析出物理地址的协议
传输层
- TCP:保证两端通信可达,可处理丢包、传输顺序错误
- UDP:面向无连接的传输层协议,常用于多播、广播通信、视频通信等。
应用层(这里指应用层及以上)
- HTTP:浏览器与服务端之间通信使用
- HTML:传输数据的格式是HTML,是表示层的协议
- SMTP:即Simple Mail Tranfer Protocol,发送邮件使用的协议
- FTP:即File Transfer Protocol,传输时会建立两个TCP连接,一个是发出传输请求时所要用到的控制连接,另一个是与实际传输数据时所要用到的数据连接
- TELNET与SSH:远程登录
- SNMP:即Simple Neteork Management Protocol,使用它管理主机、网桥、路由等称为SNMP代理。
数据包
每个分层,都会给所发送数据附加一个首部,这个首部包含了该层所必要的信息。
帧、数据报、段
- 帧:数据链路层中包的单位
- 数据报:网络层以上的分层中包的单位
- 段:TCP数据流中的信息

- 传输层增加TCP首部,TCP首部包括源端口号、目标端口号、序号(用以区分发送的包中哪部分是数据)、校验和(判断数据是否损坏)
- 网络层增加IP首部,IP首部包含接收端IP地址、发送端IP地址
IP包生成后,参考路由控制表决定接受此IP包的路由或主机
-
数据链路层增加以太网首部,以太网首部包含收发MAC地址、以太网数据协议
数据流动示意图
数据接收后的处理
这里我们只讲TCP模块
1.先计算校验和,判断数据是否出错
2.检查是否按照序号接收数据
3.检查端口号
4.接收完毕后,接收端发送一个“确认回执”给发送端,如果发送端没有收到这个回执,就会认为接收端没有接收到数据,会不停重发