详解网络的五层协议


本文摘自PHP中文网,作者青灯夜游,侵删。

1.应用层

任务 :为操作系统或网络应用程序提供访问网络服务的接口 ,通过应用进程间的交互完成特定网络应用。应用层定义的是应用进程间通信和交互的规则

常用协议:HTTP、SMTP、FTP、ping、telnet、DNS、DHCP等

HTTP协议(超文本传输协议)

主要特点:

 ● 支持客户/服务器模式

 ● 简单快速:客户向服务器请求服务时,只需传送请求方法和路径;请求方法常用GET、HEAD、POST等,每种方法规定了客户与服务器联系的不同类型;HTTP协议简单,服务器程序规模小,通信速度较快

 ● 灵活:HTTP允许传输任意类型的数据对象;正在传输的数据类型由Content-Type加以标记

 ● 无连接:无连接是指每次连接只处理一个请求;服务器处理完客户请求,并收到客户应答后,即断开连接,节省传输时间

 ● 无状态:无状态是指协议对于事务处理没有记忆能力;应答较快,但传输数据量较大

HTTP URL:定位网络资源

 ● http://host[:port][abs_path]

HTTP请求

 ● 三部分组成:请求行、消息报头、请求正文

 ● 格式:Method Request-URI HTTP-Version CRLF

 ● Method:请求方法,GET、POST等

 ● Request-URI:请求的HTTP协议版本

 ● CRLF:回车换行

HTTP响应

 ● 由三部分组成:状态行、消息报头、响应正文

 ● 状态行格式:HTTP-Version Status-Code Reason-Phrase CRLF

 ● HTTP-Version:服务器HTTP协议版本

 ● Status-Code:服务器返回的响应状态码

HTTP状态码

 ● 由三位数字组成,首数字定义响应类别

 ● 1xx:指示信息,表示请求已接收,继续处理;

 ● 2xx:成功

 ● 3xx:重定向,要完成请求必须进行更进一步的操作;

 ● 4xx:客户端错误,请求有语法错误或请求无法实现

 ● 5xx:服务器端错误:服务器未能实现合法的请求

常见状态代码

 ● 200:OK,请求成功;

 ● 400:Bad Request,请求有语法错误,不能被服务器所理解;

 ● 401:Unauthorized,请求未经授权;

 ● 403:Forbidden,服务器收到请求,但是拒绝提供服务;

 ● 404:Not Found,请求资源不存在;

 ● 500:Internet Server Error,服务器发生不可预期的错误;

 ● 503:Server Unavailable,服务器不能处理客户请求

2.运输层

任务:负责向两个主机中进程之间的通信提供通用数据服务(为两台主机的应用程序提供端到端通信)

主要使用以下两种协议:

传输控制协议TCP :提供面向连接的 、可靠的、基于流的数据传输服务,数据传输的单位是报文段。使用超时重发、数据确认等方式确保数据被正确发送至目的地

用户数据报协议UDP:提供无连接的、不可靠的、基于数据报的数据传输服务;数据传输的单位是用户数据报

3.网络层

任务: 负责对数据包进行路由选择和存储转发

 ● 负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段和用户数据报封装成分组(IP数据报)或包进行传送。

 ● IP协议:逐跳发送模式;根据数据包的目的地IP地址决定数据如何发送;如果数据包不能直接发送至目的地,IP协议负责寻找一个合适的下一跳路由器,并将数据包交付给该路由器转发

 ● ICMP协议:因特网控制报文协议,用于检测网络连接

4.数据链路层

任务: 负责分配MAC地址

 ● 两个相邻节点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧,在两个相邻的链路上传送帧(frame)。每一帧包括数据和必要的控制信息。

 ● 网卡接口的网络驱动程序,处理数据在物理媒介上的传输;不同的物理网络具有电气特性,网络驱动程序隐藏实现细节,为上层协议提供一致接口

 ● 常用协议:地址解析协议(ARP)和反地址解析协议(RARP),实现IP地址与机器物理地址(MAC地址)之间的转换

5.物理层

物理层所传数据单位是比特(bit)。物理层要考虑用多大的电压代表1 或 0 ,以及接受方如何识别发送方所发送的比特。

6.各层对应的工作设备

 ● 物理层:中继器、集线器

 ● 数据链路层:网桥或交换机

 ● 网络层中继系统:路由器

 ● 网络层以上的中继系统:网关

以上就是详解网络的五层协议的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

docker怎么查看网络详情

centos7系统网络不通

详解http协议

centos无法ping通网络

centos7连不上网络

nfs服务简介及使用方法

网络组实现的步骤详解

centos系统网络不通怎么办

centos7无法重启网络怎么解决

详解网络的五层协议

更多相关阅读请进入《协议》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...