数据包必须包含,数据包必须包含哪些内容
啥是完整数据包?
在互联网上做的一切都涉及到数据包。例如,您接收的每个网页都以一系列数据包的形式传入,您发送的每封电子邮件都以一系列数据包的形式传出。以小型数据包传输数据的网络称为数据包交换网络。
在互联网上,网络以字节为单位将电子邮件分割为多个大小固定的部分。这些部分就是数据包。每个数据包都承载着引导它到达目的地的信息——发件人的IP地址、目标收件人的IP地址以及其他一些信息,以告诉网络此电子邮件分割成了多少个数据包和这些数据包的编号。数据包根据互联网所用的协议承载数据:传数控制协议/互联网协议(TCP/IP)。每个数据包都包含邮件正文的一部分。典型的数据包可能包含1,000或1,500字节。
然后每个数据包通过最佳可用路由发送到目的地——要么邮件的所有其他数据包都采用该路由,要么所有其他数据包都不采用。这使得网络的效率更高。首先,网络可以平衡每毫秒内各个设备间的负载。其次,如果传输邮件时网络中的一件设备出现故障,数据包也可以经路由绕过故障,确保整封邮件的传递成功。
数据包,数据报文,数据帧之间的关系
一、数据帧(Frame):数据链路层,传递的单位是frame 帧,就是数据链路层的协议数据单元,包括三部分
1、帧头,里面有mac地址,通过这个地址可以在底层的交换机这个层面里顺着网线找到你的计算机。
2、数据部分,ip数据包,意思是使用ip地址定位的一个数据包。
3、帧尾。其中,帧头和帧尾包含一些必要的控制信息,比如同步信息、地址信息、差错控制信息等;数据部分则包含网络层传下来的数据,比如ip数据包。 ?
二、数据包(Packet):TCP/IP协议通信传输中的数据单位,处于网络层,在局域网中,“包”是包含在“帧”里的。packet是整个tcpip通信协议里网络层的传输单位,也是最小的单位。
有着目的地的ip地址及其来源的ip地址和其他的校验信息。它也被称为头。来自传输层托付给自己待传送的信息。这个信息会被分成多个ip数据包发送出去。所以网络层传递的是ip包,ip包里是待传输消息的一部分。
三、数据报(Datagram):现在来到传输层了,传输层直接接受来自你的消息,小到给朋友发个晚安,大到给别人传递个文件,只要提供对方的ip地址(还有端口号),其它的都交给传输层帮助实现。
这两种协议都会在发送前把你的消息拆分成多个ip数据包来传输。udp英文就叫 user datagram protocol。所以数据报是啥,就是带地址的消息。
扩展资料:
1、据报是不能比数据帧大的,数据帧根据不同网络(无线有线)长度会有所区别,数据包(一块数据)进行为网络层传输时会进行判别,如果长过是网络层要进行分片,成为数据报。
2、假设要传输一个UDP数据包,以太网的MTU为1500字节,一般IP首部为20字节,UDP首部为8字节,数据的净荷(payload)部分预留是1500-20-8=1472字节。如果数据部分大于1472字节,就会出现分片现象。
3、IP分片发生在IP层,不仅源端主机会进行分片,中间的路由器也有可能分片,因为不同的网络的MTU是不一样的,如果传输路径上的某个网络的MTU比源端网络的MTU要小,路由器就可能对IP数据报再次进行分片。而分片数据的重组只会发生在目的端的IP层。
4、TCP:对于TCP数据,在建立连接的三次握手的过程中,连接双方会相互通告MSS(Maximum Segment Size,最大报文段长度),MSS一般是MTU—IP首部(20)—TCP首部(20),每次发送的TCP数据都不会超过双方MSS的最小值,所以就保证了IP数据报不会超过MTU,避免了IP分片。
pppoe发现阶段的数据报文有几类,分别是什么
PPPoE协议的工作流程包含发现和会话两个阶段,发现阶段是无状态的,目的是获得PPPoE终结端(在局端的ADSL设备上)的以太网MAC地址,并建立一个唯一的PPPoE SESSION-ID。发现阶段结束后,就进入标准的PPP会话阶段。
当一个主机想开始一个PPPoE会话,它必须首先进行发现阶段,以识别局端的以太网MAC地址,并建立一个PPPoE SESSION-ID。在发现阶段,基于网络的拓扑,主机可以发现多个接入集中器,然后允许用户选择一个。当发现阶段成功完成,主机和选择的接入集中器都有了他们在以太网上建立PPP连接的信息。直到PPP会话建立,发现阶段一直保持无状态的Client/Server(客户/服务器)模式。一旦PPP会话建立,主机和接入集中器都必须为PPP虚接口分配资源。
PPPoE协议会话的发现和会话两个阶段具体进程如下。
发现阶段
在发现(Discovery)阶段中用户主机以类似广播的方式寻找所连接的所有接入集中器(或交换机),并获得其以太网MAC地址。然后选择需要访问的接入集中器,并确定所要建立的PPP会话唯一标识号码。发现阶段有4个步骤,当此阶段完成,通信的两端都知道PPPoE SESSION-ID和对端的以太网地址,他们一起唯一定义PPPoE会话。这4个步骤如下。
(1)主机广播发起分组(PADI),分组的目的地址为以太网的广播地址0×ffffffffffff,CODE(代码)字段值为0×09,SESSION-ID(会话ID)字段值为0×0000。PADI分组必须至少包含一个服务名称类型的标签(标签类型字段值为0×0101),向接入集中器提出所要求提供的服务。
(2)接入集中器收到在服务范围内的PADI分组,发送PPPoE有效发现提供包(PADO)分组,以响应请求。其中CODE字段值为0×07,SESSION-ID字段值仍为0×0000。PADO分组必须包含一个接入集中器名称类型的标签(标签类型字段值为0×0102),以及一个或多个服务名称类型标签,表明可向主机提供的服务种类。
(3)主机在可能收到的多个PADO分组中选择一个合适的PADO分组,然后向所选择的接入集中器发送PPPoE有效发现请求分组(PADR)。其中CODE字段为0×19,SESSION_ID字段值仍为0×0000。PADR分组必须包含一个服务名称类型标签,确定向接入集线器(或交换机)请求的服务种类。当主机在指定的时间内没有接收到PADO,完整它应该重新发送它的PADI分组,并且加倍等待时间,这个过程会被重复期望的次数。
(4)接入集中器收到PADR分组后准备开始PPP会话,它发送一个PPPoE有效发现会话确认PADS分组。其中CODE字段值为0×65,SESSION-ID字段值为接入集中器所产生的一个唯一的PPPoE会话标识号码。PADS分组也必须包含一个接入集中器名称类型的标签以确认向主机提供的服务。当主机收到PADS分组确认后,双方就进入PPP会话阶段。
PPP会话阶段
用户主机与接入集中器根据在发现阶段所协商的PPP会话连接参数进行PPP会话。一旦PPPoE会话开始,PPP数据就可以以任何其他的PPP封装形式发送。所有的以太网帧都是单播的。PPPoE会话的SESSION-ID一定不能改变,并且必须是发现阶段分配的值。
PPPoE还有一个PADT分组,它可以在会话建立后的任何时候发送,来终止PPPoE会话,也就是会话释放。它可以由主机或者接入集中器发送。当对方接收到一个PADT分组,就不再允许使用这个会话来发送PPP业务。PADT分组不需要任何标签,其CODE字段值为0×a7,SESSION-ID字段值为需要终止的PPP会话的会话标识号码。在发送或接收PADT后,即使正常的PPP终止分组也不必发送。PPP对端应该使用PPP协议自身来终止PPPoE会话,但是当PPP不能使用时,可以使用PADT。
以上各个阶段的会话流程可用图4-5描述。
验证过程
编辑
1. 在STA和AP之间建立好关联之后,客户端向AC设备发送一个PADI报文,开始PPPOE接入的开始。
2.AC向客户端发送PADO报文。
3. 客户端根据回应,发起PADR请求给AC。
4. Ac产生一个session id,通过PADS发给客户端。
5. 客户端和AC之间进行PPP的LCP协商,建立链路层通信。同时,协商使用PAP、CHAP认证方式。
6. AC通过Challenge报文发送给认证客户端,提供一个128bit的Challenge。
7. 客户端收到Challenge报文后,将密码和Challenge做MD5算法后的Challenge—Password,在Response回应报文中把它发送给AC设备。
8. Ac将Challenge、challenge-Password和用户名一起送到RADIus用户认证服务器,由RADIUS用户认证服务器进行认证。
9.RADIUS用户认证服务器根据用户信息判断用户是否合法,然后回应认证成功/失败报文到AC。如果成功,携带协商参数,以及用户的相关业务属性给用户授权。如果认证失败,则流程到此结束。
10.AC将认证结果返回给客户端。
l 1.用户进行NCP(如IPCP)协商,通过AC获取到规划的IP地址等参数。
12.认证如果成功,AC发起计费开始请求给RADIUS用户认证服务器。
13.RADIUS用户认证服务器回应计费开始请求报文。用户上线完毕,开始上网[1]??。
PPPOE认证流程图
假如客户端要通过一个局域网与远程的PPPoE服务器进行身份验证,这时,它们会有两个不同的会话阶段,Discovery阶段和PPP会话阶段。当一个客户端想开始一个PPPoE会话时,它必须首先进行发现阶段以识别对端的以太网MAC地址,并建立一个PPPoESESSON_ID。在发现阶段,基于网络的拓扑结构,客户端可以发现多个PPPoE服务器,然后从中选择一个,不过通常都是选择反应最快的一个。
Discovery阶段是一个无状态的阶段,该阶段主要是选择接入服务器,确定所要建立的PPP会话标识符Session ID,同时获得对方点到点的连接信息;PPP会话阶段执行标准的PPP过程。当此阶段完成,通信的两端都知道PPPoESESSON_ID和对端的以太网地址,它们一起定义了一个唯一的PPPoE会话。这些步骤包括客户端广播一个发起分组(PADI),一个或多个PPPoE服务器发送响应分组(PADO),客户端向选中的服务器发送请求分组(PADR),选中的PPPoE服务器发送一个确认分组(PADS)给客户端。当客户端接收到确认分组,它可以开始进行PPP会话阶段。当PPPoE服务器发送出确认分组,它可以开始PPP会话。
当客户端在指定的时间内没有接收到PADO,它应该重新发送它的PADI分组,并且加倍等待时间,这个过程会被重复期望的次数。如果客户端正等待接收PADS,应该使用具有客户端重新发送PADR的相似超时机制。在重试指定的次数后,主机应该重新发送PADI分组。PPPoE还有一个PADT分组,它可以在会话建立后的任何时候发送,来终止PPPoE会话。它可以由客户端或者PPPoE服务器发送。当接收到一个PADT,不再允许使用这个会话来发送PPP业务在发送或接收PADT后,即正常的PPP不能使用时,可以使用PADT,一旦PPPoE会话开始,PPP数据就可以以任何其它的PPP封装形式发送。所有的以太网帧都是单播的,身份验证是发生在会话阶段的,PPPoE会话的SESSION_ID一定不能改变,并且必须是发现阶段分配的值。
数据包由什么组成?
包(packet)是tcp/ip协议通信传输中的数据单位,一般也称“数据包”。包(packet):在包交换网络里,单个消息被划分为多个数据块,这些数据块称为包,它包含发送者和接收者的地址信息。这些包然后沿着不同的路径在一个或多个网络中传输,并且在目的地重新组合。
数据包和数据帧分别代表什么?
1,包(Packet)是TCP/IP协议通信传输中的数据单位,一般也称“数据包”。
TCP/IP协议是工作在OSI模型第三层(网络层)、第四层(传输层)上的,帧工作在第二层(数据链路层)。上一层的内容由下一层的内容来传输,所以在局域网中,“包”是包含在“帧”里的。
2,所谓数据帧(Data frame),就是数据链路层的协议数据单元,它包括三部分:帧头,数据部分,帧尾。其中,帧头和帧尾包含一些必要的控制信息,比如同步信息、地址信息、差错控制信息等;数据部分则包含网络层传下来的数据,比如IP数据包,等等。
扩展资料
数据包在传输过程中是以数据帧的形式传输的,数据帧由帧头+IP头+TCP/UDP头+数据+帧校验组成;
在每一个路由器上帧头与帧校验都会变化以适应不同的链路,其他内容基本不变;
所有数据都是以二进制数据进行编码的,根据各个链路类型在不同的物理链路上编码传输。
什么是数据包,数据包是用来干什么的?
数据包是TCP/IP协议通信传输中的数据单位。数据包包含发送者和接收者的地址信息。这些数据包然后沿着不同的路径在一个或多个网络中传输,并且在目的地重新组合。
任意一台主机都能够发送具有任意源地址的数据包。当数据包进行长距离的传输时需要经过许多中继站。每个中继站就是一台主机或路由器,他们基于路由信息,将数据包向下一个中继站传递。在数据传输的路途上,如果路由器遇到大数据流量的情况下,它可能在没有任何提示的情况下丢掉一些数据包。
较高层的协议(如TCP协议)用于处理这些问题,以便为应用程序提供一条可靠的链路。如果对于下一个中继站来说数据包太大,该数据包就会被分片。也就是说,大的数据包会被分成两个或多个小数据包,每个小数据包都有自己的IP头,但其净荷仅仅是大数据包净荷的一部分。
每个小数据包可以经由不同的路径到达目的地。在传输的路途上,每个小数据包还可能会被继续分片。当这些小数据包到达目标机器时,他们会被重新拼装到一起。按照规则规定,在中间节点上,不允许对小数据包进行拼装组合。
扩展资料
数据包主要由“目的IP地址”、“源IP地址”、“净载数据”等部分构成,包括包头和包体,包头是固定长度,包体的长度不定,各字段长度固定,双方的请求数据包和应答数据包的包头结构是一致的,不同的是包体的定义。
数据包的结构与我们平常写信非常类似,目的IP地址是说明这个数据包是要发给谁的,相当于收信人地址;源IP地址是说明这个数据包是发自哪里的,相当于发信人地址;而净载数据相当于信件的内容。
正是因为数据包具有这样的结构,安装了TCP/IP协议的计算机之间才能相互通信。我们在使用基于TCP/IP协议的网络时,网络中其实传递的就是数据包。理解数据包,对于网络管理的网络安全具有至关重要的意义。
参考资料来源:百度百科-数据包