以实际数据传输为例,在实际生活中,互联网通过使用的TCP/IP协议连接互联网。以访问网站为例,看看网络是如何通信的。数据传输例如,发送数据包,访问HTTP站点页面时,打开浏览器,输入站点,敲下回转键开始TCP/IP通信。
应用程序处理,首先在应用程序中进行HTML格式代码处理,相当于OSI的显示层功能。代码转换后,未必立即发送,相当于对话层的功能。请求发送时,建立TCP连接,在TCP连接中发送数据。其次,将数据发送到下一层的TCP进行处理。
TCP模块处理需要将应用层发送的数据顺利发送到目的地,实现可靠的传输功能,将TCP头部信息封装在数据中。TCP头部信息包括源口号和目的端口号(识别主机应用程序)、序列号(确认哪个部分是数据)、检查和(判断数据是否损坏)。然后将TCP头部信息的段落封装后发送给IP。
IP模块处理,IP将TCP传输的数据段作为自己的数据,封装IP头部信息。IP头部信息包括目的IP地址和源IP地址和上层协议类型的信息。IP包生成后,根据主机路由表发送数据。网络接口处理、网络接口对传输的IP包装上的以太坊头部信息进行发送处理。以太坊头部信息包括目的MAC地址、源码MAC地址和高层协议类型信息。然后将以太坊数据帧通过物理层传输到接收端。
接收数据包的接收过程是发送过程的反向过程。网络界面处理,收到以太坊帧后,首先要看头部信息的目的MAC地址是否是发给自己的帧。如果不是发给自己的帧,就会丢弃。如果是发给自己的框架,请检验上层协议类型是否为知识产权包,并将以太坊框架打开并密封为知识产权包,并将其传递给知识产权模块进行处理。
IP模块处理,收到IP包后,进行类似处理。根据头部信息的目的IP地址判断是否发送给自己的包,如果是发送给自己的包,则查看上层的协议类型,将IP包的解封发送给TCP协议处理。
TCP模块处理,收到TCP段后,首先检查和判断数据是否被破坏。然后检验是否按序号接收数据。最终检验端口号,明确具体APP。数据收到后,将确认收据发送给发送方。数据完全接收后,将TCP段的解封装发送给端口号识别的应用程序。应用程序处理,应用程序收到数据后,通过分析数据了解发送方要求的页面内容,并根据HTTP协议进行后续数据交互。