网络基础
首先一说到计算机网络,大家肯定可以想起一台台计算机连接起来的样子,也能想到计算机网络是由网线连接成的。
物理上,计算机网络就是由网线和网络通信硬件设备。
网络硬件设备一般有:集线器、交换机、路由、网卡等等
这里咱们就一起来学习,数据在通信硬件设备怎么传输的?计算机网络是由哪几层组成的?
计算机网络七层模型:(70min - 90min)
OSI模型(开放式系统互联模型)(英语:Open System Interconnection Model)
OSI三方面概述图:
OSI各层数据传输概述
OSI各层硬件概述
OSI各层协议概述
各层都有什么用?(20min)
物理层:
物理层是OSI的第一层,它虽然处于最底层,却是整个开放系统的基础。物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。如果您想要用尽量少的词来记住这个第一层,那就是“信号和介质”。
物理层规定:为传输数据所需要的物理链路创建、维持、拆除,而提供具有机械的,电子的,功能的和规范的特性。简单的说,物理层确保原始的数据可在各种物理媒体上传输。局域网与广域网皆属第1、2层(局域网、广域网主要涉及物理层和数据链路层两个层次)。
物理层的任务是透明地传送比特流。
数据链路层:
数据链路层主要有两个功能 :帧编码和误差纠正控制。帧编码意味着定义一个包含信息频率、位同步、源地址、目标地址以及其他控制信息的数据包。数据链路层协议又被分为两个子层 :逻辑链路控制(LLC)协议和媒体访问控制(MAC)协议。
数据链路层的最基本的功能是向该层用户提供透明的和可靠的数据传送结构的意义;可靠的传输使用户免去对丢失信息、干扰信息及顺序不正确等的担心。在物理层中这些情况都可能发生,在数据链路层中必须用纠错码来检错与纠错。数据链路层是对物理层传输原始比特流的功能的加强,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一无差错的线路。
它的主要任务是负责在两个相邻结点之间的线路上无差错地传输以帧为单位的数据,即将一条有可能出差错的实际链路转变成让网络层向下看去好像是一条不出差错的链路。数据链路层将数据分解成帧,然后按顺序传输帧,每一帧包括数据和必要的控制信息(包括同步信息、地址信息、差错控制信息和流量控制信息等)。
数据链路层最关键的技术就是媒体访问控制(MAC)。
网络层:
它是OSI参考模型中最复杂的一层,也是通信子网的最高层,它在下两层的基础上向资源子网提供服务。
网络层的主要任务是为网络上的不同主机提供通信。它通过路由选择算法,为分组通过通信子网选择最适当的路径,以实现网络的互连功能。具体地说,数据链路层的数据在这一层被转换为数据包,然后通过路径选择、分段组合、流量控制、拥塞控制等将信息从一台网络设备传送到另一台网络设备。网络层负责在网络中传送的数据单元是分组或包。
传输层(数据通信与数据处理的桥梁):
一般来说,OSI下三层的主要任务是数据通信,上三层的任务是数据处理。因此,该层是通信子网和资源子网的接口和桥梁,起到了承上启下的作用。
该层提供会话层和网络层之间的传输服务,这种服务从会话层获得数据,并在必要时对数据进行分割然后将数据传递到网络层,并确保数据能正确无误地传送到网络层。因此,运输层负责提供主机中两个进程之间数据的可靠传送。运输层的目的是向用户透明地传送报文,它向高层屏蔽了下层数据通信的细节。运输层的数据传输单元是报文段(segment),简称报文。
会话层:
这一层又称会晤层或对话层,其主要任务是负责维护两个实体之间的会话连接确保点到点的传输不被中断,并进行会话管理和数据交换管理,即组织和协调两个会话进程之间的通信,并对数据交换进行管理。
表示层:
它的主要功能是协商和建立数据交换的格式,解决各应用程序之间在数据格式表示上的差异,以使一个主机应用层的数据可以被另一个主机的应用层理解,如数据的加密、解密、编码、格式转换等。
应用层:
它是用户应用程序和网络之间的接口,完成用户希望在网络上完成的各种工作。它在其他六层工作的基础上,负责完成网络应用程序与网络操作系统之间的联系。应用层为用户提供的常见服务有文件服务、目录服务、文件传输服务(FTP)、远程登录服务(Telnet)、电子邮件服务(E-Mail)、打印服务、安全服务、网络管理服务、数据库服务等。
各层数据传输(10min)
自底向上的数据形式:(前三层为数据通信、后三层为数据处理)
比特流 » 以帧为单位的数据 » 以分组或包为单元的数据(短数据段) » 以传输层的协议数据单元PDU的数据(长数据段) » 带会话层、表示层和应用层控制报头信息的数据 » 带表示层和应用层控制报头信息的数据 » 带应用层控制报头信息的数据 » 最终的数据
特点:每层对其相应的控制信息进行识别和处理;然后将去掉该层控制信息的数据提交给上层处理;最后,发送进程的数据就传到接收方的接收进程。
数据的发送过程(自顶向下):
- 当发送端的应用进程需要发送数据到网络中另一台主机的应用进程时,数据首先被传送给应用层,应用层为数据加上本层的控制报头信息后,传递给表示层。
- 表示层接收到这个数据单元后,加上本层的控制报头信息,然后传送到会话层。
- 同样,会话层加上本层的报头信息后再传递给传输层。
- 传输层接收到这个数据单元后,加上本次的控制报头,形成传输层的协议数据单元PDU,然后传送给网络层。通常将传输层的PDU称为段(Segment)。
- 传输层报文送到网络层后,由于网络层的数据长度往往有限制,所以,从传输层过来的长数据段会被分成多个较小的数据段,分别加上网络层的控制信息后形成网络层的PDU传送。常常把网络层的PDU叫作分组(Packet)。
- 网络层的分组继续向下层传送,到达数据链路层,加上数据链路层的控制信息,构成数据链路层的协议数据单元,称为帧(Frame)。
- 数据链路层的帧被继续传送,到达物理层,物理层将数据信息以比特(Bit)流的方式通过传输介质传送出去。
- 如果发送的数据信息不能直接到达目标计算机,则会先传送到通信子网的路由设备上进行存储,后再转发。
- 当最终到达目标节点时,比特流将通过物理层依次向上传送。每层对其相应的控制信息进行识别和处理;然后将去掉该层控制信息的数据提交给上层处理;最后,发送进程的数据就传到接收方的接收进程。
各层硬件概述(10min)
物理层:网卡(第1层和2层之间),网线,集线器,中继器,调制解调器
数据链路层:网桥,以太网交换机
网络层:路由器、三层交换机
传输层:四层路由器、四层交换机、网关
会话层、表示层、应用层:基本不需要硬件,软件(如浏览器)进行数据处理
设备 | 作用 |
---|---|
网卡 | 能使一台计算机上网的设备 |
集线器 | 接收并广播信号,扩大传递范围 |
中继器 | 从物理层上延长网络的设备 |
调制解调器 | 实现模拟信号和数字信号相互转换 |
网桥 | 从数据链路层上延长网络的设备网桥 |
以太网交换机 | 基于MAC地址寻址转发以太网数据帧 |
路由器 | 网关设备,通过网络层转发分组数据的设备,IP通信 |
4~7层交换机 | 处理传输层以上各层网络传输的设备 |
网关 | 复杂的网络互连设备,仅用于两个高层协议不同的网络互连 |
各层具体协议
具体协议:(5min)
重要协议:(30min)
物理层:
IEEE 802 1A,IEEE 802 2到IEEE 802.11A
数据链路层:
FDDI、Ethernet、Arpanet、PDN、SLIP、PPP
数据链路层定义了在单个链路上如何传输数据。这些协议与被讨论的各种介质有关。示例:ATM,FFDI等。数据链路层必须具备一系列相应的功能,主要有:(一)如何将数据组合成数据块,在数据链路层中称这种数据块为帧,帧是数据链路层的传送单位;(二)如何控制帧在物理信道上的传输,包括如何处理传输差错,如何调节发送速率以使与接收方相匹配;以及(三)在两个网络实体之间提供数据链路通路的建立、维持和释放的管理。
网络层:
IP、ICMP、ARP、RARP、UUCP
IP:
IP地址:
IPV4:
首先出现的IP地址是IPV4,它只有4段数字,每一段最大不超过255。现在也几乎用的还是IPV4协议。IPv4采用32位地址长度,只有大约43亿个地址,在2019年11月25日IPv4位地址分配完毕。
IP地址编址方案:IP地址编址方案将IP地址空间划分为A、B、C、D、E五类,其中A、B、C是基本类,D、E类作为多播和保留使用。它们适用的类型分别为:大型网络;中型网络;小型网络;多目地址;备用。常用的是B和C两类。
A、B、C、D、E类IP网络为并列关系,而不是包含关系。
最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID。同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工作站,服务器等)有一个主机ID与其对应。Internet委员会定义了5种IP地址类型以适合不同容量的网络,即A类~E类。
其中A、B、C3类(如下表格)由InternetNIC在全球范围内统一分配,D、E类为特殊地址。
类别 | 最大网络数 | IP地址范围 | 单个网段最大主机数 | 私有IP地址范围 |
---|---|---|---|---|
A | 126(2^7-2) | 1.0.0.1-127.255.255.254 | 16777214 | 10.0.0.0-10.255.255.255 |
B | 16384(2^14) | 128.0.0.1-191.255.255.254 | 65534 | 172.16.0.0-172.31.255.255 |
C | 2097152(2^21) | 192.0.0.1-223.255.255.254 | 254 | 192.168.0.0-192.168.255.255 |
A类特点:在IP地址的四段号码中,第一段号码为网络号码,剩下的三段号码为本地计算机的号码。如果用二进制表示IP地址的话,网络地址的最高位必须是“0”。126个大胖子(大型网络),A类网络只有126个网络号码。
A类IP地址之所以认为很金贵,是因为A类地址的网络号码十分少,只有126个。每一个A级地址代表约1677万个地址,所有A类地址算出来有20.974亿之多了。中国没有分到一个“完整”的A类IP地址,而只是分到了一些A类IP地址之间的“缝隙”。在互联网的早期,很多“完整”或“准完整”的A类地址已经被美国的政府机构以及公司巨头瓜分的差不多了。中国能够申请的IP地址资源中,A类极少数,B类也不多,C类最多。
B类特点:在IP地址的四段号码中,前两段号码为网络号码。如果用二进制表示IP地址的话,网络地址的最高位必须是“10”,1.6万个小胖子(中型网络),B类IP地址的子网掩码为255.255.0.0。
C类特点:在IP地址的四段号码中,前三段号码为网络号码。如果用二进制表示IP地址的话,网络地址的最高位必须是“110”,209万个瘦子(小型网络)子网掩码为255.255.255.0。
1
2
3
4
5
6
子网掩码:
IP默认分配的子网掩码每段只有255或0
A类的默认子网掩码 255.0.0.0 一个子网最多可以容纳1677万多台电脑
B类的默认子网掩码 255.255.0.0 一个子网最多可以容纳6万台电脑
C类的默认子网掩码 255.255.255.0 一个子网最多可以容纳254台电脑
它的主要作用有两个,一是用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。二是用于将一个大的IP网络划分为若干小的子网络。
IPV6:
现有的互联网是在IPv4协议的基础上运行的。IPv6是下一版本的互联网协议,采用128位地址长度。随着互联网的飞速发展和互联网用户对服务水平要求的不断提高,IPV6在全球将会越来越受到重视。实际上,并不急于推广IPv6,只需在现有的IPv4基础上将32位扩展8位到40位,即可解决IPv4地址不够的问题。这样一来可用地址数就扩大了256倍。
IP协议:
IP是Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性:一是解决互联网问题,实现大规模、异构网络的互联互通;二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。根据端到端的设计原则,IP只为主机提供一种无连接、不可靠的、尽力而为的数据包传输服务。
IP主要包含三方面内容:IP编址方案、分组封装格式及分组转发规则。
IP是整个TCP/IP协议族的核心,也是构成互联网的基础。IP位于TCP/IP模型的网络层(相当于OSI模型的网络层),它可以向传输层提供各种协议的信息,例如TCP、UDP等;对下可将IP信息包放到链路层,通过以太网、令牌环网络等各种技术来传送。IP是TCP/IP协议簇的运作核心,有时称TCP/IP互联网为基于IP技术的网络。:
IP的最大成功之处在于它的灵活性,它只要求物理网络提供最基本的功能,即物理网络可以传输包―IP数据报,数据报有合理大小,并且不要求完全可靠地传递。IP提供的不可靠、无连接的数据报传送服务使得各种各样的物理网络只要能够提供数据报传输就能够互联,这成为Internet在数年间就风靡全球的主要原因。由于IP在TCP/IP协议中是如此的重要,它成为TCP/IP互联网设计中最基本的部分,有时都称TCP/IP互联网为基于IP技术的网络。
IP是怎样实现网络互联的?各个厂家生产的网络系统和设备,如以太网、分组交换网等,它们相互之间不能互通,不能互通的主要原因是:因为它们所传送数据的基本单元(技术上称之为“帧”)的格式不同。IP协议实际上是一套由软件程序组成的协议软件,它把各种不同“帧”统一转换成“IP数据报”格式,这种转换是因特网的一个最重要的特点,使所有各种计算机都能在因特网上实现互通,即具有“开放性”的特点。
传输层:
两大协议:TCP、UDP
TCP:
TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。 一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂。TCP建立连接要进行3次握手,而断开连接要进行4次
由TCP的三次握手和四次断开可以看出,TCP使用面向连接的通信方式, 大大提高了数据通信的可靠性,使发送数据端和接收端在数据正式传输前就有了交互, 为数据正式传输打下了可靠的基础。
UDP:
UDP(用户数据报协议)是面向非连接的,不与对方建立连接,而直接把数据报包发送出去。UDP适用于一次传输少量的数据,对于可靠性要求不高的应用环境。日常生活中使用的ping命令测试主机是否通信正常,事实上’ping’命令的原理就是向对方主机发送UDP数据包,然后对方主机确认收到数据包,假设数据包是否到达的消息及时反馈回来了,那么网络传输就是正常的。
特点 | UDP | TCP |
---|---|---|
是否连接 | 无连接 | 面向连接 |
是否可靠 | 不可靠传输,不使用流量控制和拥塞控制 | 可靠传输,使用流量控制和拥塞控制 |
连接对象个数 | 支持一对一,一对多,多对一和多对多交互通信 | 只能是一对一通信 |
传输方式 | 面向报文 | 面向字节流 |
首部开销 | 首部开销小,仅8字节 | 首部最小20字节,最大60字节 |
适用场景 | 适用于实时应用(IP电话、视频会议、直播等) | 适用于要求可靠传输的应用,例如文件传输 |
会话层:
SMTP,DNS
DNS协议:
相信大家在平时工作中都离不开DNS解析,DNS解析是互联网访问的第一步,无论是使用笔记本浏览器访问网络还是打开手机APP的时候,访问网络资源的第一步必然要经过DNS解析流程。访问网络资源其实是访问互联网服务器上的网络资源,服务器要被识别有两种方式,第一种就是IP地址,电脑可以直接使用,而人们却不太喜欢,例如访问百度就得输入一串IP地址对人很难很不友好。就有了第二种域名,访问百度就只用输入www.baidu.com
,好记很友好。
DNS就是域名系统,是因特网中的一项核心服务,是用于实现域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。说白了,DNS解析就是发挥把域名解析成IP地址的功能,让电脑以IP地址的形式使用。
域名结构解析
如上图所示,域名结构是树状结构,树的最顶端代表根服务器,根的下一层就是由我们所熟知的.com、.net、.cn等通用域和.cn、.uk等国家域组成,称为顶级域。网上注册的域名基本都是二级域名,比如http://baidu.com
、http://taobao.com
等等二级域名,它们基本上是归企业和运维人员管理。接下来是三级或者四级域名,这里不多赘述。总体概括来说域名是由整体到局部的机制结构。
常见的DNS服务器就是两种:权威解析服务器和递归解析服务器。递归解析服务器也可以叫做localDNS。
权威解析服务器
DNS权威服务器保存着域名空间中部分区域的数据。如果DNS服务器负责管辖一个或多个区域时,称此DNS服务器为这些区域的权威服务器。
根权威DNS或者二级权威服务器中的资源记录标记被指定为区域权威服务器的DNS服务器。通过资源记录中列出服务器,其他服务器就认 为它是该区域的权威服务器。这意味着在 NS 资源记录中指定的任何服务器都被其他服务器当作权威的来源,并且能肯定应答区域内所含名称的查询。
递归服务器
递归服务器在正常情况下,初始的时候里面没有任何域名解析数据,里面所有的域名解析数据都来自于它到权威解析服务器的查询结果,一旦查询完毕,递归服务器就会根据TTL时间在本地形成一条缓存记录,并为用户提供DNS解析的查询服务,这是递归服务器的功能。
DNS解析流程
表示层:
Telnet
Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个telnet会话,必须输入用户名和密码来登录服务器。Telnet是常用的远程控制Web服务器的方法。
应用层:
HTTP:
超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣,因为它使开发和部署非常地直截了当。
请求报文格式:
请求方法:GET,POST ,HEAD ,OPTIONS、PUT、PATCH、DELETE、TRACE 和 CONNECT 九种方法。
版本:一般情况我们访问的网站要是HTTP1.1要么是HTTP2
常见请求头部:
- Host、Cookie、Accept、Accept-Encoding、Accept-Language、Connection、User-Agent等等
实体:GET方法不放数据,一般用于POST方法放数据
响应报文格式:
状态码:1**
、2**
、3**
、4**
、5**
。
常见响应头部:
- Content-Type、Date、Server、Refresh等等
实体:请求成功会返回数据供浏览器解析
FTP:
文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。
FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。然而, 用户并不真正登录到自己想要存取的计算机上面而成为完全用户, 可用FTP程序访问远程资源, 实现用户往返传输文件、目录管理以及访问电子邮件等等, 即使双方计算机可能配有不同的操作系统和文件存储方式。
抛砖引玉:
计算机网络体系结构分为3种:OSI
体系结构、TCP
/ IP
体系结构、五层体系结构。其他两种体系和OSI的区别
HTTP:《图解HTTP》
区分知识(20min)
“四网”的辨析(5min)
物联网 > 互联网 > 因特网 > 万维网
物联网(IoT):互联网是计算机之间的互相联接,而物联网是所有物体(包括计算机)的“互联网”。把电子、通信、计算机三大领域的技术融合起来,在互联网的基础上实现物物相连。
互联网(internet):凡是能彼此通信的计算机设备组成的网络就叫互联网,范围广,即使两台互相连接的电脑也算互联网。
因特网(Internet):是网络与网络之间所串连成的庞大网络,是互联网最大的一个。
万维网(World Wide Web):万维网也称为Web,是文件、图片、多媒体和其他资源的集合,资源通过超链接互相连接形成网络,并使用统一资源定位器(URL)标识。
URI URL URN (15min)
平时一般都用的是URL,URN几乎看不见,但这里还是进行区分一下,有所了解。
URI是统一资源标识符,URL(统一资源定位符)和URN(统一资源名称)是URI的子集。
Web上地址的基本形式是URI,它有两种形式:
1.一种是URL,这是目前URI的最普遍形式。
2.另一种就是URN,这是URL的一种更新形式,URN不依赖于位置,并且有可能减少失效连接的个数。但是其流行还需假以时 日,因为它需要更精密软件的支持。
寻找一个具体的人:如果通过地址找,即xx省xx市xx区 … xx单元xx室的主人,这就是 URL(通过位置定位资源);如果通过身份证号去找就是 URN(通过身份证号表示某个人,不通过某个人所在的位置)。简而言之,资源的具体位置就是URL,资源的名称或编号就是URN。
URL的具体格式:
[协议名]://[用户名]:[密码]@[服务器地址]:[服务器端口号]/[路径]?[查询字符串]#[片段ID]
- 协议名:例如http、https、ftp、mailto、file。
- 登录信息(用户名:密码):指定用户名和密码作为从服务器端获取资源时必要的登录信息(身份认证)。此项是可选项。
- 服务器地址:使用绝对 URI 必须指定待访问的服务器地址。地址可以是类似 hackr.jp 这种 DNS 可解析的名称,或是 192.168.1.1 这类 IPv4 地址 名,还可以是 [0:0:0:0:0:0:0:1] 这样用方括号括起来的 IPv6 地址名。
- 服务器端口号:指定服务器连接的网络端口号。此项也是可选项,若用户省略则自动使用默认端口号。
- 带层次的文件路径:指定服务器上的文件路径来定位特指的资源。这与 UNIX 系统的文件目录结构相似。
- 查询字符串:针对已指定的文件路径内的资源,可以使用查询字符串传入任意参数。此项可选。
- 片段标识符:使用片段标识符通常可标记出已获取资源中的子资源(文档内的某个位置)。但在 RFC 中并没有明确规定其使用方法。该项也为可选项。
例如百度搜索万维网:
https://www.baidu.com/s?tn=15007414_9_dg&wd=万维网
协议://服务器地址(:443)/带层次的文件路径?查询字符串
URN的具体格式:
URN的语法用巴科斯范式来写是:
<URN> ::= "urn:" <NID> ":" <NSS>
解析出来是:
` urn:
开头的urn:
序列大小写不敏感的。<NID>
是命名空间标识,它是一个“命名空间特定”的字符串,决定了如何解释<NSS>
的句法。统一资源名称的功能需求在RFC 1737中描述。
例如:
URN | corresponds to |
---|---|
urn:isbn:0451450523 |
The 1968 book The Last Unicorn, identified by its book number |
urn:isan:0000-0000-9E59-0000-O-0000-0000-2 |
The 2002 film Spider-Man, identified by its audiovisual number. |
urn:issn:0167-6423 |
The scientific journal Science of Computer Programming, identified by its serial number. |
urn:ietf:rfc:2648 |
The IETF’s RFC 2648. |
urn:mpeg:mpeg7:schema:2001 |
The default namespace rules for MPEG-7 video metadata. |
urn:oid:2.16.840 |
The OID for the United States. |
TCP / IP体系结构简述
TCP/IP网络层的核心是IP协议,它是TCP/IP协议族中最主要的协议之一。在TCP/IP协议族中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互联网控制报文协议)以及ICMP协议(Internet组管理协议)。
IP是一种网络层协议,提供的是一种不可靠的服务,它只是尽可能快地把分组从源结点送到目的结点,但是并不提供任何可靠性保证。它同时被TCP和UDP使用,TCP和UDP的每组数据都通过端系统和每个中间路由器中的IP层在互联网中进行传输。ICMP是IP协议的附属协议。IP层用它来与其他主机或路由器交换错误报文和其他重要信息。IGMP是Internet组管理协议。它用来把一个UDP数据报多播到多个主机。