为什么要对网络协议分层

简化问题难度和复杂度。由于各层之间独立,我们可以分割大问题为小问题。

灵活性好。当其中一层的技术变化时,只要层间接口关系保持不变,其他层不受 影响。

易于实现和维护。

促进标准化工作。分开后,每层功能可以相对简单地被描述。

四层协议,五层协议和七层协议的关系如下:

TCP/IP是一个四层的体系结构,主要包括:应用层、运输层、网际层和网络接 口层。

五层协议的体系结构主要包括:应用层、运输层、网络层,数据链路层和物理层。

OSI七层协议模型主要包括是:应用层(Application)、表示层 (Presentation)、会话层(Session)、运输层(Transport)、网络层 (Network)、数据链路层

Data Link)、物理层(Physical)。

setnx

Incrby\Decrby注:五层协议的体系结构只是为了介绍网络原理而设计的,实际应用还是 TCP/IP 四层体系结构。

应用层( application-layer )的任务是通过应用进程间的交互来完成特定网络应 用。应用层协议定义的是应用进程(进程:主机中正在运行的程序)间的通信和 交互的规则。

对于不同的网络应用需要不同的应用层协议。在互联网中应用层协议很多,如域 名系统 DNS,支持万维网应用的 HTTP 协议,支持电子邮件的 SMTP 协议等 等。

运输层(transport layer)的主要任务就是负责向两台主机进程之间的通信提供通 用的数据传输服务。应用进程利用该服务传送应用层报文。 运输层主要使用一下两种协议

UDP

TCP

是否连接

无连接

面向连接

是否可靠

不可靠传 输,不使 用流量控 制和拥塞 控制

可靠传 输,使用 流量控制 和拥塞控 制

连接对象 个数

支持一对 一,一对 多,多对 一和多对 多交互通 信

只能是一 对一通信

传输方式

面向报文

面向字节 流

首部开销

首部开销 小,仅8字 节

首部小 20字节, 大60字 节

场景

适用于实 时应用 (IP电 话、视频会议、直 播等)

适用于要 求可靠传 输的应 用,例如 文件传输

每一个应用层(TCP/IP参考模型的最高层)协议一般都会使用到两个传输层协 议之一:

运行在TCP协议上的协议:

TCP/IP 四层体系结构。 TCP/IP 协议族

应用层

运输层

1. 传输控制协议-TCP:提供面向连接的,可靠的数据传输服务。

2. 用户数据协议-UDP:提供无连接的,尽大努力的数据传输服务(不 保证数据传输的可靠性)。

HTTPHypertext Transfer Protocol,超文本传输协议),主要用于普通浏 览。

HTTPSHTTP over SSL,安全超文本传输协议),HTTP协议的安全版本。

FTPFile Transfer Protocol,文件传输协议),用于文件传输。

POP3Post Office Protocol, version 3,邮局协议),收邮件用。

SMTPSimple Mail Transfer Protocol,简单邮件传输协议),用来发送电子 邮件。

TELNETTeletype over the Network,网络电传),通过一个终端 (terminal)登陆到网络。

SSHSecure Shell,用于替代安全性差的TELNET,用于加密安全登陆用。 运行在UDP协议上的协议:

BOOTPBoot Protocol,启动协议),应用于无盘设备。

NTPNetwork Time Protocol,网络时间协议),用于网络同步。

DHCPDynamic Host Configuration Protocol,动态主机配置协议),动态 配置IP地址。 运行在TCPUDP协议上:

DNSDomain Name Service,域名服务),用于完成地址查找,邮件转发等 工作。网络层的任务就是选择合适的网间路由和交换结点,确保计算机通信的数据及时 传送。在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组和 包进行传送。在

TCP/IP 体系结构中,由于网络层使用 IP 协议,因此分组也叫 IP 数据报 ,简称数据报。

互联网是由大量的异构(heterogeneous)网络通过路由器(router)相互连 接起来的。互联网使用的网络层协议是无连接的网际协议(Intert Prococol) 和许多路由选择协

议,因此互联网的网络层也叫做网际层或 IP 层。

数据链路层(data link layer)通常简称为链路层。两台主机之间的数据传输,总 是在一段一段的链路上传送的,这就需要使用专门的链路层的协议。

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

址信息,差错控制等)。

在接收数据时,控制信息使接收端能够知道一个帧从哪个比特开始和到哪个比特 结束。

一般的web应用的通信传输流是这样的:

发送端在层与层之间传输数据时,每经过一层时会被打上一个该层所属的首部信 息。反之,接收端在层与层之间传输数据时,每经过一层时会把对应的首部信息 去除。

在物理层上所传送的数据单位是比特。 物理层(physical layer)的作用是实现相 邻计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的 差异。使其上面的

数据链路层不必考虑网络的具体传输介质是什么。透明传送 比特流表示经实际电路传送后的比特流没有发生变化,对传送的比特流来说, 这个电路好像是看不见的。

在互联网使用的各种协议中重要和著名的就是 TCP/IP 两个协议。现在人们 经常提到的 TCP/IP 并不一定是单指 TCP  IP 这两个具体的协议,而往往是表 示互联网所使用的整个

TCP/IP 协议族。

互联网协议套件(英语:Internet Protocol Suite,缩写IPS)是一个网络通讯模型, 以及一整个网络传输协议家族,为网际网络的基础通讯架构。它常被通称为TCP/IP

议族(英语:TCP/IP Protocol Suite,或TCP/IP Protocols),简称TCP/IP。因为该 协定家族的两个核心协定:TCP(传输控制协议)和IP(网际协议),为该家族中早

通过的标准。

划重点:

TCP(传输控制协议)和IP(网际协议) 是先定义的两个核心协议,所以才统称为TCP/IP协议族

TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议,在发送数据 前,通信双方必须在彼此间建立一条连接。所谓的连接,其实是客户端和服 务端保存的一份关于

对方的信息,如ip地址、端口号等。

TCP可以看成是一种字节流,它会处理IP层或以下的层的丢包、重复以及错误问 题。在连接的建立过程中,双方需要交换一些连接的参数。这些参数可以放在 TCP头部。

一个TCP连接由一个4元组构成,分别是两个IP地址和两个端口号。一个TCP连 接通常分为三个阶段:连接、数据传输、退出(关闭)。通过三次握手建立一个 链接,通过四次挥

手来关闭一个连接。

当一个连接被建立或被终止时,交换的报文段只包含TCP头部,而没有数据。

网络层

数据链路层

物理层

TCP/IP 协议族

TCP的三次握手四次挥手在了解TCP连接之前先来了解一下TCP报文的头部结构。

上图中有几个字段需要重点介绍下:

1)序号:seq序号,占32位,用来标识从TCP源端向目的端发送的字节流, 发起方发送数据时对此进行标记。

2)确认序号:ack序号,占32位,只有ACK标志位为1时,确认序号字段才有 效,ack=seq+1

3)标志位:共6个,即URGACKPSHRSTSYNFIN等,具体含义如 下:

需要注意的是:

三次握手的本质是确认通信双方收发数据的能力首先,我让信使运输一份信件给对方,对方收到了,那么他就知道了我的发件能力和他的收件能力是可以的。

于是他给我回信,我若收到了,我便知我的发件能力和他的收件能力是可以的,并且他的发件能力和我的收件能力是可以。

然而此时他还不知道他的发件能力和我的收件能力到底可不可以,于是我 后回馈一次,他若收到了,他便清楚了他的发件能力和我的收件能力是可以的。这,就是三次握手,这

样说,你理解了吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

入伍击寇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值