精华内容
下载资源
问答
  • 常见网络协议
    千次阅读
    2019-04-20 10:59:22


    1.应用层协议

    这些协议主要有 FTP、 TFTP、 HTTP、 SMTP、 DHCP、 Telnet、 DNS 和 SNMP 等。

    FTP(File TransportProtocol,文件传输协议)是网络上两台计算机传送文件的协议,运
    行在 TCP 之上,是通过 Internet 将文件从一台计算机传输到另一台计算机的一种途径。

    TFTP(Trivial FileTransfer Protocol,简单文件传输协议)是用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。 

    HTTP(Hypertext TransferProtocol,超文本传输协议)是用于从 WWW 服务器传输超文
    本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。 

    SMTP(Simple Mail TransferProtocol,简单邮件传输协议)建立在 TCP 之上,是一种提
    供可靠且有效的电子邮件传输的协议。 SMTP 是建模在 FTP 文件传输服务上的一种邮件服
    务,主要用于传输系统之间的邮件信息,并提供与电子邮件有关的通知。

    DHCP(Dynamic HostConfiguration Protocol,动态主机配置协议)建立在 UDP 之上,是
    基于客户机/服务器模型设计的。

    Telnet(远程登录协议)是登录和仿真程序,建立在 TCP 之上,它的基本功能是允许用
    户登录进入远程计算机系统。

    DNS(Domain NameSystem,域名系统)在 Internet 上域名与 IP 地址之间是一一对应
    的,域名虽然便于人们记忆,但机器之间只能互相识别 IP 地址,它们之间的转换工作称为
    域名解析.

    SNMP(Simple NetworkManagement Protocol,简单网络管理协议)是为了解决 Internet
    上的路由器管理问题而提出的,它可以在 IP、 IPX、 AppleTalk 和其他传输协议上使用。 SNMP是指一系列网络管理规范的集合,包括协议本身、数据结构的定义和一些相关概念。目前,
    SNMP 已成为网络管理领域中事实上的工业标准,

    更多相关内容
  • 常见协议: a) HTTP、HTTPS 超文本传输协议 b) FTP 文件传输协议 c) SMTP 简单邮件传输协议 本文主要介绍http超文本传输协议。 1、HTTP协议 即超文本传输协议,网站是基于HTTP协议的,例如网站的图片、CSS、JS等...
  • 常见网络协议

    万次阅读 多人点赞 2019-03-26 13:32:50
    一、网络协议 二、TCP(Transmission Control Protocol,传输控制协议)       TCP头格式      TCP协议中的三次握手和四次挥手      TCP报文抓取工具三、...

    一、网络协议

    二、TCP(Transmission Control Protocol,传输控制协议)

          TCP头格式
          TCP协议中的三次握手和四次挥手
          TCP报文抓取工具
    三、HTTP(HyperText Transfer Protocol,超文本传输协议)

          请求报文结构
          请求报文样例
          请求报文参数详解
          响应报文结构
          响应报文样例
          响应报文参数详解
          HTTP报文抓取工具
          Session和Cookie
    四、相关资料

    ---------------------------------------------------------------------------------------------

    一、网络协议

           国际标准化组织(International Standard Organization,ISO)公布了开放系统互连参考模型(OSI/RM)。OSI/RM是一种分层的体系结构,参考模型共有7层。
    TCP/IP(Transmission Control Protocol/Internet Protocol)作为Internet的核心协议。它是个协议族,包含多种协议。
    分层的基本想法是每一层都在它的下层提供的服务基础上提供更高级的增值服务,而最高层提供能运行分布式应用程序的服务。

    发送请求的过程是从最顶层(应用层)出发,每一层负责封装属于自己的信息到请求中,最后将一整个请求发送给对方。
    接收请求的过程是从最底层(网络接口层)开始,每一层的协议负责解析属于自己的东西,比如网际层(IP)处理ip信息,传输层(TCP)处理点对点的端口,应用层(HTTP)处理Request或Response的Line\Header\Body。

     

    二、TCP(Transmission Control Protocol,传输控制协议)

          TCP是一种面向连接(连接导向)的、可靠的基于字节流的传输层通信协议。TCP将用户数据打包成报文段,它发送后启动一个定时器,另一端收到的数据进行确认、对失序的数据重新排序、丢弃重复数据。
    TCP的特点有:

    • TCP是面向连接的运输层协议
    • 每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的
    • TCP提供可靠交付的服务
    • TCP提供全双工通信。数据在两个方向上独立的进行传输。因此,连接的每一端必须保持每个方向上的传输数据序号。
    • 面向字节流。面向字节流的含义:虽然应用程序和TCP交互是一次一个数据块,但TCP把应用程序交下来的数据仅仅是一连串的无结构的字节流。

    1、TCP头格式

    (1)   Source Port(源端口号):数据发起者的端口号,16bit。
    (2)   Destination Port(目的端口号):数据接收者的端口号,16bit。
    (3)   Sequence Number(顺序号码,Seq):用于在数据通信中解决网络包乱序(reordering)问题,以保证应用层接收到的数据不会因为网络上的传输问题而乱序(TCP会用这个顺序号码来拼接数据),32bit。
    (4)   Acknowledgment Number(确认号码,ack):是数据接收方期望收到发送方在下一个报文段的顺序号码(Seq),因此确认号码应当是上次已成功收到顺序号码(Seq)加1,32bit。
    (5)   Offset(TCP报文头长度):用于存储报文头中有多少个32bit(上图的一行),存储长度为4bit,最大可表示(2^3+2^2+2^1+1)*32bit=60bytes的报文头。最小取值5,5*32bit=20bytes。
    (6)   Reserved(保留):6bit, 均为0
    (7)   TCP Flags(TCP标志位)每个长度均为1bit
              CWR:压缩,TCP Flags值0x80。
              ECE:拥塞,0x40。
              URG:紧急,0x20。当URG=1时,表示报文段中有紧急数据,应尽快传送。
              ACK:确认,0x10。当ACK = 1时,代表这是一个确认的TCP包,取值0则不是确认包。
              PSH:推送,0x08。当发送端PSH=1时,接收端尽快的交付给应用进程。
              RST:复位,0x04。当RST=1时,表明TCP连接中出现严重差错,必须释放连接,再重新建立连接。
              SYN:同步,0x02。在建立连接是用来同步序号。SYN=1, ACK=0表示一个连接请求报文段。SYN=1,ACK=1表示同意建立连接。
              FIN:终止,0x01。当FIN=1时,表明此报文段的发送端的数据已经发送完毕,并要求释放传输连接。
    (8)   窗口:用来控制对方发送的数据量,通知发放已确定的发送窗口上限。
    (9)   检验和:该字段检验的范围包括头部和数据这两部分。由发端计算和存储,并由收端进行验证。
    (10) 紧急指针:紧急指针在URG=1时才有效,它指出本报文段中的紧急数据的字节数。
    (11) TCP选项:长度可变,最长可达40字节

    备注:ISN(Inital Sequence Number):初始化Sequence Number,发生在建立连接时。

    2、TCP协议中的三次握手和四次挥手

    三次握手可以理解成:

    我打电话给你你没看到,一会之后你又打电话给我问有什么事,我再给你说我有什么什么事

    四次挥手可以理解成:

    我给你说我不想再要你送的东西了,你说不行啊还有很多没有送完(继续在送),(送完啦)你说已经把所有东西都送给我啦,我说我收到了那就结束吧-----------

     

    特别注意

    Seq:是发送方当前报文的顺序号码。
    ack:是发送方期望对方在下次返回报文中给回的Seq。

    建立连接需要三次握手

    第一次握手:客户端向服务端发送连接请求包,标志位SYN(同步序号)置为1,顺序号码为X=0。

    第二次握手:服务端收到客户端发过来报文,由SYN=1知道客户端要求建立联机,则为这次连接分配资源。并向客户端发送一个SYN和ACK都置为1的TCP报文,设置初始顺序号码Y=0,将确认序号(ack)设置为上一次客户端发送过来的顺序号(Seq)加1,即X+1 = 0+1=1。

    第三次握手:客户端收到服务端发来的包后检查确认号码(ack)是否正确,即第一次发送的Seq加1(X+1=1)。以及标志位ACK是否为1。若正确,服务端再次发送确认包,ACK标志位为1,SYN标志位为0。确认号码(ack)=Y+1=0+1=1,发送顺序号码(Seq)为X+1=1。Server收到后确认号码值与ACK=1则连接建立成功,可以传送数据了。

    断开连接需要四次挥手

    提醒:中断连接端可以是Client端,也可以是Server端。只要将下面两角色互换即可。
    第一次挥手:客户端给服务端发送FIN报文,用来关闭客户端到服务端的数据传送。将标志位FIN和ACK置为1,顺序号码为X=1,确认号码为Z=1。意思是说”我Client端没有数据要发给你了,但是如果你还有数据没有发送完成,则不必急着关闭Socket,可以继续发送数据。所以你先发送ACK过来。”

    第二次挥手:服务端收到FIN后,发回一个ACK(标志位ACK=1),确认号码为收到的顺序号码加1,即X=X+1=2。顺序号码为收到的确认号码=Z。意思是说“你的FIN请求我收到了,但是我还没准备好,请继续你等我的消息" 这个时候客户端就进入FIN_WAIT状态,继续等待服务端的FIN报文。

    第三次挥手:当服务端确定数据已发送完成,则向客户端发送FIN报文,关闭与客户端的连接。标志位FIN和ACK置为1,顺序号码为Y=1,确认号码为X=2。意思是告诉Client端“好了,我这边数据发完了,准备好关闭连接了。”

    第四次挥手:客户端收到服务器发送的FIN之后,发回ACK确认(标志位ACK=1),确认号码为收到的顺序号码加1,即Y+1=2。顺序号码为收到的确认号码X=2。意思是“我Client端知道可以关闭连接了,但是我还是不相信网络,怕 Server端不知道要关闭,所以发送ACK后进入TIME_WAIT状态,如果Server端没有收到ACK则可以重传。Client端等待了2MSL后依然没有收到回复,则证明Server端已正常关闭,那好,我Client端也可以关闭连接了。“(在TIME_WAIT状态中,如果TCP client端最后一次发送的ACK丢失了,它将重新发送。TIME_WAIT状态中所需要的时间是依赖于实现方法的。典型的值为30秒、1分钟和2分钟。等待之后连接正式关闭,并且所有的资源(包括端口号)都被释放。)

    为什么关闭的时候却是四次挥(握)手?
    因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中ACK报文是用来应答的,SYN报文是用来同步的。但是关闭连接时,当Server端收到FIN报文时,很可能并不会立即关闭SOCKET,所以只能先回复一个ACK报文,告诉Client端,"你发的FIN报文我收到了"。只有等到我Server端所有的报文都发送完了,我才能发送FIN报文,因此不能一起发送。故需要四步握手。

    3、TCP报文抓取工具:Wireshark

    捕获过滤器中填入表达式:host www.cnblogs.com and port 80(80等效于http)
    有多个TCP流时在显示过滤器中填入表达式:tcp.stream eq 0 筛选出第一个TCP流(包含完整的一次TCP连接:三次握手和四次挥手)

     

    每条记录都有如下协议层
    (1) Frame:   物理层的数据帧概况
    (2)Ethernet II: 数据链路层以太网帧头部信息
    (3) Internet Protocol Version 4: 互联网层IP包头部信息
    (4)Transmission Control Protocol:  传输层的数据段头部信息,此处是TCP
    (5) Hypertext Transfer Protocol:  应用层的信息,此处是HTTP协议

     

     

    三、HTTP(HyperText Transfer Protocol,超文本传输协议)

          HTTP是一个应用层协议,虽然在2015年已推出HTTP/2版本,并被主要的web浏览器和web服务器支持。但目前使用最广泛的还是HTTP/1.1版本。有关历史请查阅这里
    它的主要特点可概括如下:

    • 支持客户/服务器模式。
    • 简单快速:客户向服务器请求服务时,只需传送请求方法和路径。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
    • 灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
    • 无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
    • 无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。为了解决这个问题, Web程序引入了Cookie机制来维护状态。

    另外,HTTP请求报文和响应报文都是由开始行(对于请求消息,开始行就是请求行,对于响应消息,开始行就是状态行),消息报头(可选),空行(只有CRLF的行),消息正文(可选)组成。将在下面详细讲解。

    1、请求报文结构

    报文中的数据都使用ASCII编码,各个字段的长度是不确定的(除了作为结尾的CRLF外,不允许出现单独的CR或LF字符)。

    2、请求报文样例

    复制代码
    复制代码
    POST /search HTTP/1.1  
    Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, 
    application/msword, application/x-silverlight, application/x-shockwave-flash, */*  
    Referer: http://www.google.cn/  
    Accept-Language: zh-cn  
    Accept-Encoding: gzip, deflate  
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; TheWorld)  
    Host: www.google.cn 
    Connection: Keep-Alive  
    Cookie: PREF=ID=80a06da87be9ae3c:U=f7167333e2c3b714:NW=1:TM=1261551909:LM=1261551917:S=ybYcq2wpfefs4V9g; 
    NID=31=ojj8d-IygaEtSxLgaJmqSjVhCspkviJrB6omjamNrSm8lZhKy_yMfO2M4QMRKcH1g0iQv9u-2hfBW7bUFwVh7pGaRUb0RnHcJU37y-
    FxlRugatx63JLv7CWMD6UB_O_r  
    

    hl=zh-CN&source=hp&q=domety

    复制代码
    复制代码

     

    3、请求报文参数详解

    请求方法

    所有请求方法名称全为大写,目前有9种:

    备注
    安全性:https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol
    幂等性:表示的操作至多只会被处理一次,每次调用都将返回第一次调用时的处理结果。
    关于HTTP请求GET和POST的区别
    (1).提交形式:
       GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如EditPosts.aspx?name=test1&id=123456.  POST方法是把提交的数据放在HTTP包的Body中.
    (2).传输数据的大小:
       HTTP协议本身没有对传输的数据大小进行限制,HTTP协议规范也没有对URL长度进行限制。 而在实际开发中存在的限制主要有:
       GET:特定浏览器和服务器对URL长度有限制,例如IE对URL长度的限制是2083字节(2K+35)。对于其他浏览器,如Netscape、FireFox等,理论上没有长度限制,其限制取决于操作系统的支持。
       因此对于GET提交时,传输数据就会受到URL长度的限制。
       POST:由于不是通过URL传值,理论上数据不受限。但实际各个WEB服务器会规定对post提交数据大小进行限制,Apache、IIS6都有各自的配置。
    (3).安全性:
        POST的安全性要比GET的安全性高,具有真正的Security的含义。而且通过GET提交数据,用户名和密码将明文出现在URL上,因为登录页面有可能被浏览器缓存,其他用户浏览历史纪录就可以拿到账号和密码了。

    请求报头域

    报头域指头部中的Key,且不分大小写。

    4、响应报文结构

    如所见,响应报文结构与请求报文结构唯一真正的区别在于第一行中用状态信息代替了请求信息。状态行(status line)通过提供一个状态码来说明所请求的资源情况。

    5、响应报文样例

    复制代码
    复制代码
    HTTP/1.1 200 OK
    Date: Mon, 23 May 2005 22:38:34 GMT
    Content-Type: text/html; charset=UTF-8
    Content-Encoding: UTF-8
    Content-Length: 138
    Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
    Server: Apache/1.3.3.7 (Unix) (Red-Hat/Linux)
    ETag: "3f80f-1b6-3e1cb03b"
    Accept-Ranges: bytes
    Connection: close
    

    <html>
    <head>
    <title>An Example Page</title>
    </head>
    <body>
    Hello World, this is a very simple HTML document.
    </body>
    </html>

    复制代码
    复制代码

     

    6、响应报文参数详解

    响应状态码

    状态代码由三位数字组成,第一个数字定义了响应的类别,且有五种可能取值。
    1xx:指示信息--表示请求已接收,继续处理。
    2xx:成功--表示请求已被成功接收、理解、接受。
    3xx:重定向--要完成请求必须进行更进一步的操作。
    4xx:客户端错误--请求有语法错误或请求无法实现。
    5xx:服务器端错误--服务器未能实现合法的请求。
    常用状态码:

    200 OK:成功返回状态,对应,GET,PUT,PATCH,DELETE。
    201 created  - 成功创建。
    302 Found:重定向,新的URL会在response中的Location中返回,浏览器将会使用新的URL发出新的Request。

                     例如在IE中输入http://www.google.com. HTTP服务器会返回304, IE取到Response中Location header的新URL, 又重新发送了一 个 Request.
    304 Not Modified:代表上次的文档已经被缓存了, 还可以继续使用。
    400 bad request   - 请求格式错误。
    401 unauthorized   - 未授权。
    403 forbidden   - 鉴权成功,但是该用户没有权限。
    404 not found - 请求的资源不存在。
    405 method not allowed - 该http方法不被允许。
    410 gone - 这个url对应的资源现在不可用。
    415 unsupported media type - 请求类型错误。
    422 unprocessable entity - 校验错误时用。
    429 too many request - 请求过多。
    500 Internal Server Error:服务器发生了不可预期的错误。
    503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常。

    响应报头域

    报头域指头部中的Key,且不分大小写。

    7、HTTP报文抓取工具

    Wireshark、Fiddler、HttpWatch(需结合IE)、Telnet
    Wireshark:
    在显示过滤器中填入表达式:http and ip.addr == 42.121.252.58 and tcp.port == 80 过滤出http的响应和请求流程

     

     

    8、Session和Cookie

    说到HTTP,就不得不提Session和Cookie。但严格来说,Session和Cookie并不是http协议的一部分。由于HTTP协议设计原则是无状态的,但是近年来出现了种种需求,其中cookie的作用就是为了解决HTTP协议无状态的缺陷所作出的努力。后来出现的session机制则是又一种在客户端与服务器之间保持状态的解决方案。 具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。同时我们也看到,由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的,但实际上它还有其他选择。

    Session

    Session是可以存储针对于某一个用户的浏览器以及通过其当前窗口打开的任何窗口具有针对性的用户信息存储机制。 
    通常大家认为,只要关闭浏览器,session就消失,其实这是错误的理解。对session来说也是一样的,除非程序通知服务器删除一个session,否则服务器会一直保留。由于关闭浏览器不会导致session被删除,迫使服务器为seesion设置了一个失效时间,当距离客户端上一次使用session的时间超过这个失效时间时,服务器就可以认为客户端已经停止了活动,才会把session删除以节省存储空间.

    (1)第一次访问某个web站点资源时,客户端提交没有带SessionID的请求(请求报文头没有Cookie头域信息)。
      而web服务器会检查是否有SessionID过来,没有则创建SessionID,并根据web程序自身定义在请求哪个资源时添加属于当前会话的信息(也可为空),这个信息列表以SessionID作为标识。然后将SessionID返回给客户端(通过响应报文头的Set-Cookie头域)。
    (2 )客户端再次访问同个web站点时,提交带有SessionID的请求(通过Cookie头域存储SessionID)。由服务端判断session是否失效,如果未失效,可查询属于当前会话的信息列表。如果失效,则创建新的session(产生新的SessionID),而原先的session(包含session带的信息列表)则丢失,无法访问。

    Cookie

    保存SessionID的方式可以采用Cookie,这样在交互过程中浏览器可以自动的按照规则把这个SessionID发回给服务器。Cookie的命名方式类似于SessionID。有时Cookie被人为的禁止,所以出现了其他机制以便在Cookie被禁止时仍然能够把SessionID传递回服务器。这种技术叫做URL重写,就是把SessionID直接附加在URL路径的后面,附加方式也有两种,一种是作为URL路径的附加信息,表现形式为http://www.wantsoft.com/index.asp;jsessionid= ByOK3vjFD75aPnrF7C2HmdnV6QZcEbzWoWiBYEnLerjQ99zWpBng!-145788764 。
    另一种是作为查询字符串附加在URL后面,表现形式为http://www.wantsoft.com/index?js ... 99zWpBng!-145788764 。

     

    展开全文
  • 本文针对常用网络协议的报文结构进行讲解,并提供报文示例 数据链路层协议: 以太网数据帧、ARP协议、PPP协议、PPPoE协议;网络层的协议: IP协议;传输层的协议:TCP协议、UDP协议、ICMP协议 各位觉得有什么其它常用...

    本文针对常用网络协议的报文结构进行讲解,并提供报文示例
    数据链路层协议: 以太网数据帧、ARP协议、PPP协议、PPPoE协议;网络层的协议: IP协议;传输层的协议:TCP协议、UDP协议、ICMP协议

    各位觉得有什么其它常用网络协议,请提出,我再补充进来

    以太网数据帧

    以太网链路传输的数据包称做以太帧,或者以太网数据帧。在以太网中,网络访问层的软件必须把数据转换成能够通过网络适配器硬件进行传输的格式。

    以太网帧的整体大小必须在 64~1518 字节之间(不包含前导码)。有些系统支持更大的帧,最大可以支持 9000 字节。有些系统支持更大的帧,最大可以支持 9000 字节。

    数据帧结构

    以太帧由以下三个部分构成:

    • 以太帧起始部分由前同步码和帧开始定界符组成,
    • 后面紧跟着一个以太网报头:以 MAC 地址说明目的地址和源地址及协议类型
    • 以太帧的中部是该帧负载的包含其他协议报头的数据包,如 IP 协议。

    以太帧由一个 32 位冗余校验码结尾,用于检验数据传输是否出现损坏。以太帧结构如图所示。

    在这里插入图片描述

    字段含义
    前同步码用来使接收端的适配器在接收 MAC 帧时能够迅速调整时钟频率,使它和发送端的频率相同。前同步码为 7 个字节,1 和 0 交替。
    帧开始定界符帧的起始符,为 1 个字节。前 6 位 1 和 0 交替,最后的两个连续的 1 表示告诉接收端适配器:“帧信息要来了,准备接收”。
    目的地址接收帧的网络适配器的物理地址(MAC 地址),为 6 个字节(48 比特)。作用是当网卡接收到一个数据帧时,首先会检查该帧的目的地址,是否与当前适配器的物理地址相同,如果相同,就会进一步处理;如果不同,则直接丢弃。
    源地址发送帧的网络适配器的物理地址(MAC 地址),为 6 个字节(48 比特)。
    类型上层协议的类型。由于上层协议众多,所以在处理数据的时候必须设置该字段,标识数据交付哪个协议处理。例如,字段为 0x0800 时,表示将数据交付给 IP 协议。
    数据也称为效载荷,表示交付给上层的数据。以太网帧数据长度最小为 46 字节,最大为 1500 字节。如果不足 46 字节时,会填充到最小长度。最大值也叫最大传输单元(MTU)。 在 Linux 中,使用 ifconfig 命令可以查看该值,通常为 1500。
    帧检验序列 FCS检测该帧是否出现差错,占 4 个字节(32 比特)。发送方计算帧的循环冗余码校验(CRC)值,把这个值写到帧里。接收方计算机重新计算 CRC,与 FCS 字段的值进行比较。如果两个值不相同,则表示传输过程中发生了数据丢失或改变。这时,就需要重新传输这一帧。

    数据帧示例

    在这里插入图片描述

    IP/TCP/UDP协议

    这三种网络协议的报文结构详见:网络安全系列-X: TCP/IP协议及报文格式详解

    ICMP协议

    控制报文协议(Internet Control Message Protocol,ICMP)是 TCP/IP 协议族的一个子协议。ICMP 协议用于在 IP 主机和路由器之间传递控制消息,描述网络是否通畅、主机是否可达、路由器是否可用等网络状态。

    数据包在发送到目标主机的过程中,通常会经过一个或多个路由器。而数据包在通过这些路由进行传输时,可能会遇到各种问题,导致数据包无法发送到目标主机上。为了了解数据包在传输的过程中在哪个环节出现了问题,就需要用到 ICMP 协议。它可以跟踪消息,把问题反馈给源主机。

    ICMP 报文结构

    ICMP 报文一般为 8 个字节,包括类型、代码、校验和扩展内容字段。ICMP 报文基本结构如图所示
    在这里插入图片描述
    类型表示 ICMP 的消息类型,代码表示对类型的进一步说明,校验和表示对整个报文的报文信息的校验。

    在 ICMP 报文中,如果类型和代码不同,ICMP 数据包报告的消息含义也会不同。常见的类型和代码的 ICMP 含义如表所示

    类型代码含义
    00回显应答(ping 应答)
    30网络不可达
    31主机不可达
    32协议不可达
    33端口不可达
    34需要进行分片,但设置不分片位
    35源站选路失败
    36目的网络未知
    37目的主机未知
    39目的网络被强制禁止
    310目的主机被强制禁止
    311由于服务类型 TOS,网络不可达
    312由于服务类型 TOS,主机不可达
    313由于过滤,通信被强制禁止
    314主机越权
    315优先中止失效
    40源端被关闭(基本流控制)
    50对网络重定向
    51对主机重定向
    52对服务类型和网络重定向
    53对服务类型和主机重定向
    80回显请求(ping 请求)
    90路由器通告
    100路由器请求
    110传输期间生存时间为 0
    111在数据报组装期间生存时间为 0
    120坏的 IP 首部
    121缺少必需的选项
    130时间戳请求
    140时间戳应答
    170地址掩码请求
    180地址掩码应答

    ICMP报文示例

    • | 8 | 0 | 回显请求(ping 请求) |
    • | 0 | 0 | 回显应答(ping 应答) |
      在这里插入图片描述
      在这里插入图片描述

    ARP协议

    ARP 是“Address Resolution Protocol”的缩写,译为“地址解析协议”,它是根据 IP 地址获取物理地址【MAC地址】的一个 TCP/IP 协议。

    ARP 协议通过 IP 地址向 MAC 地址的转换,解决网络层和数据链路层的衔接问题。

    由于 IP 地址和 MAC 地址定位方式不同,ARP 协议成为数据传输的必备协议。主机发送信息前,必须通过 ARP 协议获取目标 IP 地址对应的 MAC 地址,才能正确地发送数据包。

    IP地址与MAC地址定位方式:

    • 在网络链路层中,同一局域网中的一台主机要和另一台主机进行通信,需要通过 MAC 地址进行定位,然后才能进行数据包的发送。
    • 在网络层和传输层中,计算机之间是通过 IP 地址定位目标主机,对应的数据报文只包含目标主机的 IP 地址,而没有 MAC 地址。

    因此,在发送之前需要根据 IP 地址获取 MAC 地址,然后才能将数据包发送到正确的目标主机,而这个获取过程是通过 ARP 协议完成的。

    ARP报文结构

    ARP 协议是通过报文进行工作的,ARP 报文格式如下图所示:
    在这里插入图片描述
    ARP 报文总长度为 28 字节,MAC 地址长度为 6 字节,IP 地址长度为 4 字节。

    其中,每个字段的含义如下。

    • 硬件类型:指明了发送方想知道的硬件接口类型,以太网的值为 1。
    • 协议类型:表示要映射的协议地址类型。它的值为 0x0800,表示 IP 地址。
    • 硬件地址长度和协议长度:分别指出硬件地址和协议的长度,以字节为单位。对于以太网上 IP 地址的ARP请求或应答来说,它们的值分别为 6 和 4。
    • 操作类型:用来表示这个报文的类型,ARP 请求为 1,ARP 响应为 2,RARP 请求为 3,RARP 响应为 4。
    • 发送方 MAC 地址:发送方设备的硬件地址。
    • 发送方 IP 地址:发送方设备的 IP 地址。
    • 目标 MAC 地址:接收方设备的硬件地址。
    • 目标 IP 地址:接收方设备的IP地址。

    ARP 数据包分为请求包和响应包,对应报文中的某些字段值也有所不同:

    • ARP 请求包报文的操作类型(op)字段的值为 request(1),目标 MAC 地址字段的值为 Target 00:00:00_00:00:00(00:00:00:00:00:00)(广播地址)。
    • ARP 响应包报文中操作类型(op)字段的值为 reply(2),目标 MAC 地址字段的值为目标主机的硬件地址。

    ARP报文示例

    在这里插入图片描述

    PPP协议

    PPP协议处于TCP/IP协议栈的数据链路层,主要用在支持全双工的同异步链路上,进行点到点之间的数据传输。
    PPP主要由三类协议族组成:

    • 链路控制协议族(Link Control Protocol),主要用来建立、拆除和监控PPP数据链路。
    • 网络层控制协议族(Network Control Protocol),主要用来协商在该数据链路上所传输的数据包的格式与类型。
    • 扩展协议族CHAP(Challenge-Handshake Authentication Protocol)和PAP(Password Authentication Protocol),主要用于网络安全方面的验证。

    PPP在协议栈中的位置
    在这里插入图片描述

    报文结构

    在这里插入图片描述
    各字段的含义如下:

    • Flag域:Flag域标识一个物理帧的起始和结束,该字节为0x7E。
    • Address域可以唯一标识对端。PPP协议是被运用在点对点的链路上,因此,使用PPP协议互连的两个通信设备无须知道对方的数据链路层地址。按照协议的规定将该字节填充为全1的广播地址,对于PPP协议来说,该字段无实际意义。
    • Control域: 该字段默认值为0x03,表明为无序号帧,PPP默认没有采用序列号和确认应答来实现可靠传输。Address和Control域一起标识此报文为PPP报文,即PPP报文头为FF03。
    • Protocol域可用来区分PPP数据帧中信息域所承载的数据包类型。
      • 当协议字段为0x0021时,PPP帧的信息字段就是IP数据报。
      • 当协议字段为0xC021时,PPP帧的信息字段就是PPP链路控制协议LCP的数据。
      • 当协议字段为0x8021时,PPP帧的信息字段就是网络层的控制数据。IPCP
    • Information域最大长度是1500字节,其中包括填充域的内容。Information域的最大长度称为最大接收单元MRU(Maximum Receive Unit)。MRU的缺省值为1500字节,在实际应用当中可根据实际需要进行MRU的协商。 LCP报文封装的帧格式如下:
      • Code域的长度为一个字节,主要是用来标识LCP数据报文的类型。
      • Identifier域为1个字节,用来匹配请求和响应,当Identifier域值为非法时,该报文将被丢弃。
      • Length域的值就是该LCP报文的总字节数据。它是Code域、Identifier域、Length域和Data域四个域长度的总和。
      • Data域所包含的是协商报文的内容,这个内容包含以下字段,即LCP报文配置参数选项的封装格式
        • Type为协商选项类型。
        • Length为协商选项长度,它是指Data域的总长度,也就是包含Type、Length和Data。
        • Data为协商选项的详细信息。
    • FCS域的功能主要对PPP数据帧传输的正确性进行检测。
    • 标志字段F(Flag),规定为0x7E(符号0x表示它后面的字符是用十六进制表示的。十六进制的7E的二进制表示是01111110),标志字段表示一个帧的结束。

    PPPoE(PPP over Ethernet)协议

    PPPoE(PPP over Ethernet)协议是一种把PPP帧封装到以太网帧中的链路层协议。PPPoE可以使以太网网络中的多台主机连接到远端的宽带接入服务器。

    目的
    运营商希望把一个站点上的多台主机连接到同一台远程接入设备,同时接入设备能够提供与拨号上网类似的访问控制和计费功能。在众多的接入技术中,把多个主机连接到接入设备的最经济的方法就是以太网,而PPP协议可以提供良好的访问控制和计费功能,于是产生了在以太网上传输PPP报文的技术,即PPPoE。

    PPPoE利用以太网将大量主机组成网络,通过一个远端接入设备连入因特网,并运用PPP协议对接入的每个主机进行控制,具有适用范围广、安全性高、计费方便的特点。

    报文格式

    在这里插入图片描述

    • Destination_address域: 一个以太网单播目的地址或者以太网广播地址(0xffffffffffff)。对于Discovery数据包来说,该域的值是单播或者广播地址,PPPoEClient寻找PPPoEServer的过程使用广播地址,确认PPPoEServer后使用单播地址。对于Session阶段来说,该域必须是Discovery阶段已确定的通信对方的单播地址。
    • Source_address域: 源设备的以太网MAC地址。
    • Ether_type 设置为0x8863(Discovery阶段)或者0x8864(Session阶段)。
      • Ver域 4bits,表示PPPoE版本号,值为0x01。
      • Type域 4bits,表示PPPoE类型,值为0x01。
      • Code域 8bits,表示PPPoE报文类型。详见PPPoE报文类型
        • Code域为0x00,表示会话数据。
        • Code域为0x09,表示PADI报文;
        • Code域为0x07,表示PADO或PADT报文;
        • Code域为0x19,表示PADR报文;
        • Code域为0x65,表示PADS报文。
      • Session_ID域 16bits,对于一个给定的PPP会话,该值是一个固定值,并且与以太网Source_address和Destination_address一起实际地定义了一个PPP会话。值0xffff为将来的使用保留,不允许使用。
      • Length域 16bits,定义PPPoE的Payload域长度。不包括以太网头部和PPPoE头部的长度。
      • PPP Packet: PPP报文结构上面PPP报文封装的帧格式

    报文示例

    PPPOE交互示意图

    在这里插入图片描述

    具体报文示例

    在这里插入图片描述
    在这里插入图片描述

    参考

    TCP/IP协议入门教程
    以太网通讯报文详解
    PPP报文格式
    PPPoE简介
    PPPoE报文结构
    PPPoE报文格式及交互详解

    展开全文
  • 实现计算机系统与网络间的物理连接 数据链路层 2 进行数据打包与解包,形成信息帧 网络层 3 提供数据通过的路由 传输层 4 提供传输顺序信息与响应 会话层 5 建立和中止连接 ...

    一、OSI模型

    名称层次功能
    物理层1实现计算机系统与网络间的物理连接
    数据链路层 2进行数据打包与解包,形成信息帧
    网络层3提供数据通过的路由
    传输层4提供传输顺序信息与响应
    会话层5建立和中止连接
    表示层6数据转换、确认数据格式
    应用层 7提供用户程序接口

    二、协议层次

    网络中常用协议以及层次关系

     

    1、 进程/应用程的协议

    平时最广泛的协议,这一层的每个协议都由客程序和服务程序两部分组成。程序通过服务器与客户机交互来工作。常见协议有:Telnet、FTP、SMTP、HTTP、DNS等。

    Telnet协议:是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。

    FTP协议:文件传输协议(File Transfer Protocol),是 TCP/IP 协议组中的协议之一,用于服务器和客户端文件上传和下载。

    SMTP协议:是一种提供可靠且有效的电子邮件传输的协议。

    HTTP协议:超文本传输协议(Hyper Text Transfer Protocol)是用于从万维网服务器传输超文本到本地浏览器的传送协议,基于TCP/IP通信协议来传递数据,属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。

    DNS协议:DNS(Domain Name System)是互联网的一项服务,将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。

    2、 主机—主机层协议

    建立并且维护连接,用于保证主机间数据传输的安全性。这一层主要有两个协议:

    TCP(Transmission Control Protocol:传输控制协议;面向连接,可靠传输。

    UDP(User Datagram Protocol):用户数据包协议;面向无连接,不可靠传输。

    3、 Internet层协议

    负责数据的传输,在不同网络和系统间寻找路由,分段和重组数据报文,另外还有设备寻址。些层包括如下协议:

    IP(Internet Protocol):Internet协议,负责TCP/IP主机间提供数据报服务,进行数据封装并产生协议头,TCP与UDP协议的基础。

    ICMP(Internet Control Message Protocol):Internet控制报文协议。ICMP协议其实是IP协议的的附属协议,IP协议用它来与其它主机或路由器交换错误报文和其它的一些网络情况,在ICMP包中携带了控制信息和故障恢复信息。

    ARP(Address Resolution Protocol)协议:地址解析协议。

    RARP(Reverse Address Resolution Protocol):逆向地址解析协议。

    OSI 全称(Open System Interconnection)网络的OSI七层结构

    (1)物理层——Physical 

    这是整个OSI参考模型的最低层,它的任务就是提供网络的物理连接。所以,物理层是建立在物理介质上(而不是逻辑上的协议和会话),它提供的是机械和电气接口。主要包括电缆、物理端口和附属设备,如双绞线、同轴电缆、接线设备(如网卡等)、RJ-45接口、串口和并口等在网络中都是工作在这个层次的。 

    物理层提供的服务包括:物理连接、物理服务数据单元顺序化(接收物理实体收到的比特顺序,与发送物理实体所发送的比特顺序相同)和数据电路标识。

    (2)数据链路层——DataLink 

    数据链路层是建立在物理传输能力的基础上,以帧为单位传输数据,它的主要任务就是进行数据封装和数据链接的建立。封装的数据信息中,地址段含有发送节点和接收节点的地址,控制段用来表示数据连接帧的类型,数据段包含实际要传输的数据,差错控制段用来检测传输中帧出现的错误。 

    数据链路层可使用的协议有SLIP、PPP、X.25和帧中继等。常见的集线器和低档的交换机网络设备都是工作在这个层次上,Modem之类的拨号设备也是。工作在这个层次上的交换机俗称“第二层交换机”。 
    具体讲,数据链路层的功能包括:数据链路连接的建立与释放、构成数据链路数据单元、数据链路连接的分裂、定界与同步、顺序和流量控制和差错的检测和恢复等方面。

    (3)网络层——Network 

    网络层属于OSI中的较高层次了,从它的名字可以看出,它解决的是网络与网络之间,即网际的通信问题,而不是同一网段内部的事。网络层的主要功能即是提供路由,即选择到达目标主机的最佳路径,并沿该路径传送数据包。除此之外,网络层还要能够消除网络拥挤,具有流量控制和拥挤控制的能力。网络边界中的路由器就工作在这个层次上,现在较高档的交换机也可直接工作在这个层次上,因此它们也提供了路由功能,俗称“第三层交换机”。 

    网络层的功能包括:建立和拆除网络连接、路径选择和中继、网络连接多路复用、分段和组块、服务选择和流量控制。

    (4)传输层——Transport 

    传输层解决的是数据在网络之间的传输质量问题,它属于较高层次。传输层用于提高网络层服务质量,提供可靠的端到端的数据传输,如常说的QoS就是这一层的主要服务。这一层主要涉及的是网络传输协议,它提供的是一套网络数据传输标准,如TCP协议。 

    传输层的功能包括:映像传输地址到网络地址、多路复用与分割、传输连接的建立与释放、分段与重新组装、组块与分块。 
    根据传输层所提供服务的主要性质,传输层服务可分为以下三大类: 

    A类:网络连接具有可接受的差错率和可接受的故障通知率(网络连接断开和复位发生的比率),A类服务是可靠的网络服务,一般指虚电路服务。 

    C类:网络连接具有不可接受的差错率,C类的服务质量最差,提供数据报服务或无线电分组交换网均属此类。 

    B类:网络连接具有可接受的差错率和不可接受的故障通知率,B类服务介于A类与C类之间,在广域网和互联网多是提供B类服务。

    网络服务质量的划分是以用户要求为依据的。若用户要求比较高,则一个网络可能归于C型,反之,则一个网络可能归于B型甚至A型。例如,对于某个电子邮件系统来说,每周丢失一个分组的网络也许可算作A型;而同一个网络对银行系统来说则只能算作C型了。

    (5)会话层——Senssion 

    会话层利用传输层来提供会话服务,会话可能是一个用户通过网络登录到一个主机,或一个正在建立的用于传输文件的会话。 

    会话层的功能主要有:会话连接到传输连接的映射、数据传送、会话连接的恢复和释放、会话管理、令牌管理和活动管理。

    (6)表示层——Presentation 

    表示层用于数据管理的表示方式,如用于文本文件的ASCII和EBCDIC,用于表示数字的1S或2S补码表示形式。如果通信双方用不同的数据表示方法,他们就不能互相理解。表示层就是用于屏蔽这种不同之处。 

    表示层的功能主要有:数据语法转换、语法表示、表示连接管理、数据加密和数据压缩。

    (7)应用层——Application 

    这是OSI参考模型的最高层,它解决的也是最高层次,即程序应用过程中的问题,它直接面对用户的具体应用。应用层包含用户应用程序执行通信任务所需要的协议和功能,如电子邮件和文件传输等,在这一层中TCP/IP协议中的FTP、SMTP、POP等协议得到了充分应用。 

    SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB:体系结构,改进后的协议就是著名的SNMP。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此SNMP受Internet标准网络管理框架的影响也很大。现在SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。

    SNMP的体系结构是围绕着以下四个概念和目标进行设计的:保持管理代理(agent)的软件成本尽可能低;最大限度地保持远程管理的功能,以便充分利用Internet的网络资源;体系结构必须有扩充的余地;保持SNMP的独立性,不依赖于具体的计算机、网关和网络传输协议。在最近的改进中,又加入了保证SNMP体系本身安全性的目标。 

    OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。与RIP相对,OSPF是链路状态路由协议,而RIP是距离向量路由协

    RIP(Routing information Protocol)是应用较早、使用较普遍的内部网关协议(Interior Gateway Protocol,简称IGP),适用于小型同类网络,是典型的距离向量(distance-vector)协议。文档见RFC1058、RFC1723。 

    RIP通过广播UDP报文来交换路由信息,每30秒发送一次路由信息更新。RIP提供跳跃计数(hop count)作为尺度来衡量路由距离,跳跃计数是一个包到达目标所必须经过的路由器的数目。如果到相同目标有二个不等速或不同带宽的路由器,但跳跃计数相同,则RIP认为两个路由是等距离的。RIP最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达。

    CSMA/CD(Carrier Sense Multiple Access/Collision Detect)即载波监听多路访问/冲突检测方法。

     

    【原文链接】https://www.cnblogs.com/wangcp-2014/p/10083565.html

    展开全文
  • 对于计算机网络的学习,“协议”是一个高频的词,那么究竟协议指的是什么? 协议:protocol,是一种允许电子设备相互交流的一系列标准的规则(rules)。例如:传输什么样的数据、传输与接收数据的时候会使用什么样的...
  • 目录 前言 干货来啦~ 说点想说的 ..."薄荷,我今天在做一个实验,感觉好复杂啊!而且这里面好多路由协议,我都不知道我...常见的路由协议有什么? 我们知道不同网段的路由就是指导IP数据包发送的路径,而路由协议
  • 常见网络安全协议

    万次阅读 多人点赞 2019-09-25 20:38:04
    常见网络安全协议 网络认证协议Kerberos Kerberos 是一种网络认证协议,其设计目标是通过密钥系统为客户机 / 服务器应用程序提供强大的认证服务。该认证过程的实现不依赖于主机操作系统的认证,无需基于主机...
  • outlook中的smtp协议具体是什么

    千次阅读 2021-08-11 09:59:19
    outlook中smtp协议应用层的服务,可以适用于各种网络系统。outlook是微软办公软件套装的组件之一,它对windows自带的outlook express的功能进行了扩充。(学习视频分享:编程视频)详细说明:Microsoft Office ...
  • 计算机网络 | 一文搞懂什么是TCP/IP协议

    万次阅读 多人点赞 2019-10-28 12:48:16
    计算机与网络设备之间如果要相互通信,双方就必须基于相同的方法.比如如何探测到通信目标.由哪一边先发起通信,使用哪种语言进行通信,怎样结束通信等规则都需要事先确定.不同的硬件,操作系统之间的通信,所有这一切都...
  • 几种常用网络传输协议

    千次阅读 2019-10-07 10:36:08
    网络常用协议以及层次关系 1、 进程/应用层的协议 平时最广泛的协议,这一层的每个协议都由客程序和服务程序两部分组成。程序通过服务器与客户机交互来工作。常见协议有:Telnet、FTP、SMTP、HTTP、DNS等。...
  • tcp/ip网络协议中的tcp是什么

    千次阅读 2017-10-11 16:17:55
    传输控制协议:TCP(Transmission Control Protocol)TCP之所以称为可靠的传输方式,是因为在使用TCP传递数据之前,会双方各自建立一条相互信任的通道,用来传递数据。 比如:A、B使用TCP作为传输层传输方式...
  • 网络协议、socket、webSocket

    万次阅读 多人点赞 2019-07-31 19:20:28
    一、网络协议 网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。 1、OSI七层协议 OSI是一个开放性的通信系统互连参考模型,他是一个定义得非常好的协议规范。OSI模型有7层结构,从上到下分别...
  • 计算机网络协议详解

    千次阅读 2020-08-15 23:09:43
    计算机网络协议详解: 本篇文章主要总结一些常见的网络基础概念以及Linux系统中的网络相关设置方法,具体包括OSI七层协议、TCP/IP协议相关内容。
  • 网络七层协议模型

    千次阅读 2022-03-14 15:16:42
    OSI参考模型 物理层:解决硬件之间通信的问题,常见的物理媒介有光纤、电缆、中继器等。它主要定义物理设备标准,...物理层协议:rs-232c(RS-232C标准(协议)的全称是EIA-RS-232C标准,定义是“数据终端设备(DT...
  • 什么是网络协议

    2020-01-05 19:05:43
    文章目录(1)什么是协议(2)什么是协议栈(3)协议的作用(4)层次间的无关性2、网络协议族想知道什么是常见网络协议吗?请见下文,嘻嘻 1、协议及协议栈的基本概念 (1)什么是协议 协议是网络中计算机或...
  • 网络安全系列-XI: 主流网络协议介绍

    千次阅读 2022-04-07 10:45:01
    本文针对主流的网络协议进行介绍
  • 因特网和网络协议

    千次阅读 2022-03-16 13:39:09
    因特网和网络协议 一.因特网 1.体系结构 物理层 数据链路层 网络层 传输层 应用层 2.数据传输基本过程 发送端 接收端 二.网络协议 1.网络层协议(IP协议) 2.传输层协议(TCP协议) 3.应用层协议 4.IP地址 三.基本服务 ...
  • 防火墙 | 网络协议

    千次阅读 热门讨论 2020-11-08 12:35:35
    网络协议 网络协议的概念 数据在“路”上行走的交通规则 协议:通信双方所共同遵守的规则 网络协议:计算机在网络中实现通信时必须遵守的规则和约定 每个网络中至少要选择一种网络协议。具体选择哪一种网络通信协议...
  • 常见网络协议

    千次阅读 2019-11-05 02:35:07
    常见网络协议 2019年10月13日 1:16 常见网络协议 ICMP是TCP/IP协议簇的核心协议之一,它用于在IP网络设备之间发送控制报文,传递差错、 控制、查询等信息。 请注意:ICMP只是确定了网络层以下的连通性,至于...
  • 什么是网络通信协议

    千次阅读 2020-08-11 15:53:51
    网络通信协议: 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样。在计算机网络中,这些连接和通信的...
  • 向大家详细介绍网络协议是什么以及网络协议三要素是什么的基础知识,不懂的朋友可以通过本文了解学习!网络协议是什么网络协议的定义:为计算机网络中进行数据交换而建立的规则、标准或约定的集合。一个网络协议至少...
  • 网络协议三要素有什么关系

    千次阅读 2021-06-19 07:31:59
    网络协议三要素有什么关系?为进行计算机网络中的数据交换而建立的规则、标准或约定的集合,协议总是某一层的协议。准确地说,它是对同等层实体之间的通信制定的有关通信规则或约定的结合。佰佰安全网看看吧。一个...
  • 几种常用网络传输协议

    千次阅读 2018-12-07 16:19:00
    一、OSI模型 名称 层次 功能 物理层 1 实现计算机系统与网络间的物理连接 数据链路层 2 进行数据打包与解包,形成信息帧 网络层 3 提供数据通过的路由 传输层 4...
  • 几种常见网络路由交换协议 1.IGRP(Interior Gateway Routing Protocol)内部网关协议。 IGRP即内部网关协议,是一种动态距离向量路由协议,它由Cisco公司80年代中期设计。使用组合用户配置尺度,包括延迟、...
  • 网络协议栈基本知识

    千次阅读 2020-07-24 13:37:06
    个人觉得原作者把网络协议栈讲解的很好(生动,易理解),所以在这里记录并分享。 1、网络协议分层 按照分层的思想把网络协议栈进行分层主要有以下好处: 1.促进标准化工作,允许各个供应商进行开发 2.各层间...
  • 网络协议分析总结

    千次阅读 多人点赞 2020-12-06 16:31:59
    ARP地址解析协议用于将计算机的网络IP地址转化为物理MAC地址,ARP协议的基本功能 就是通过目标设备的IP地址。查询目标设备的MAC地址,以保证通信的顺利进行。 在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,...
  • 7层是OSI七层协议模型, 主要是: 应用层(Application)、 表示层(Presentation)、 会话层(Session)、 传输层(Transport)、 网络层(Network)、 数据链路层(Data Link)、 物理层(Physical)。 二、5层...
  • 网络协议汇总与终极详细解析

    千次阅读 2021-12-15 14:23:53
    参考:通过“表白”,让我们快速了解网络七层协议 OSI层 功能 协议 应用层 文本传输,电子邮件,文件服务,虚拟终端 FTP,HTTP,SNMP,DNS等 表示层 数据格式化,代码转换,数据加密 没有协议 会话层 解除...
  • 网络安全----网络协议的安全性

    千次阅读 2021-11-17 17:09:58
    由于计算机网络的广泛使用,这种假设在今天已经无法成立,因此可能导致各种各样的攻击。 互联网安全协议概述 存在的问题:原始协议几乎没有安全方面的考虑。存在各种各样的攻击手段,如窃听、篡改、伪造、冒充等...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 395,118
精华内容 158,047
关键字:

常见的网络协议是指