我个人对网络通信中信息传输流程的理解如下:
1.网络通信TCP/IP五层协议分层为:
- 应用层:负责应用程序之间的数据沟通
- 传输层:负责端口之间的数据传输
- 网络层:负责地址管理与路由选择
- 链路层:负责相邻设备间的数据传输
- 物理层:负责光电信号的传输
网络通信中,用户数据从应用层到物理层需要在每一层为数据添加一个头部(这个过程称作“数据封装”),这个头部包含这段信息的来源与目的,长度等信息。数据到达接受方时,需要从物理层到应用层一层一层将这些“头部剥离”(这个过程称作”数据分用“),最终对方用户看到的只是发送方发送的数据或信息。
2."头部"包含信息:
在网络通信中每一条数据都必须带有一些关键信息(源IP地址/源端口/目的IP地址/目的端口/协议)用于标识网络中的一条通信,称为“五元组”,包含源IP地址信息,源端口信息,目的IP地址信息,目的端口信息,协议信息。
TCP,UDP协议字段中包含源16位源端口信息,16位源目的端口信息,分别用来表示源端口和目的端口;16位源校验和,校验发送的数据和接受到的数据是否相同。
IP协议字段中包含了32位源IP信息,32位目的IP信息,用来表示信息传输的来源IP地址信息和目的IP地址;16位头部校验和,用来检验头部是否被损坏;还有16位标识,3位标志,13位片偏移,来表示报文是否被分片和保证被分片的报文到达目的主机后被原样还原。
以太网协议字段包含6字节源mac地址和6字节目的mac地址,标明信息来源的网卡物理地址和信息目的网卡物理地址;2字节帧协议类型字段,表名上层协议型,4位CRC帧尾,用来做数据帧冲突检测。
(TCP/UDP和IP协议字段中还有一些其他信息暂时不做解释)
3.传输流程:
- 发送方通过某个应用程序发送一个数据或一段信息
- 应用层对数据进行第一层封装 +应用标识
- 传输层对数据进行第二层封装+TCP头(或UDP头)
- 网络层对数据进行第三层封装+ip头
- 链路层对数据进行第四层封装+以太网协议字段
- 物理层以光电信号形式将数据传输到接收方的数据链路层;
- 接收方在链路层对数据进行最外层封装信息(以太网协议字段)的解析,并在解析完成后将这一层头部信息丢弃;
- 接收方在网络层对数据进行最第三层封装信息(ip头)的解析,并在解析完成后将这一层头部信息丢弃;
- 接收方在传输对数据进行最第三层封装信息(TCP/UDP头)的解析,并在解析完成后将这一层头部信息丢弃;
- 接收方指定应用程序接收到完整信息,此时一个完整的网络传输完成
以上是我个人对网络通信中信息传输流程,有不对的地方欢迎指正!!!