UDP千兆网之TCP/IP协议基础
Posted 深入浅出玩儿转FPGA
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UDP千兆网之TCP/IP协议基础相关的知识,希望对你有一定的参考价值。
一、TCP/IP 协议简介
TCP/IP 四层模型分为应用层(Telnet、FTP、SMTP)、传输层(TCP、UDP)、网络层(IP、ARP、ICMP)、数据链路层(MAC、设备驱动)。
数据链路层:又称链路层或网络接口层,是实际网络硬件的接口。包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。定义了如何使用具体网络(如ETH)来传输数据,定义了将数据组成正确帧的规范和在网络中传输帧的规范。帧是指一串数据,它是数据在网络中的传输单位。
传输层:为两台主机上的应用程序提供端到端的通信。传输层提供了两种不同的传输服务:TCP(传输控制协议)和UDP(用户数据报协议)。TCP协议是面向连接的,可以提供可靠的数据传输服务,UDP协议是无连接的传输协议,可靠性只能由上层应用保证。
应用层:定义了应用程序使用互联网的规范,负责处理特定的应用程序细节。
二、TCP/IP 协议通信过程
当主机A的应用程序需要发送数据给主机B时,将需要传输的数据包送入TCP/IP 协议栈进行处理。首先用户数据在传输层进行打包,然后将打包后的传输层报文送给网络层。网络层对传输层的数据包进行打包(添加网络层首部信息),然后将网络层报文(IP数据包)送给数据链路层。数据链路层对IP数据包添加以太网首部和尾部信息,然后送给物理层通过网络发送出去。打包过程如下:
三、数据链路层
数据链路层处于TCP/IP 协议参考模型的最底层,在TCP/IP协议簇中,链路层主要有三个目的:(1)发送和接收IP数据包(2)发送ARP请求和接收ARP应答(3)发送RARP请求和接收RARP应答。主要负责把上层送来的数据包打包并通过特定的网络发送出去,或者对从网络上接收来的数据包进行解包并校验,然后交给上层。
数据链路层一般可再细分为介质访问控制子层 MAC 和逻辑链路控制子层LLC。MAC 子层的协议实现一般由 MAC 接口芯片来完成;而 LLC 子层的实现一般是由网络接口芯片的驱动程序来完成的。其中 MAC 位于 LLC 和物理层之间,使 LLC 适用于不同的媒体访问技术和物理媒体。MAC 单独作为一个子层,就不会因为媒体访问方法的改变而影响到较高层的协议。
以上是关于UDP千兆网之TCP/IP协议基础的主要内容,如果未能解决你的问题,请参考以下文章