计算机网络体系结构分层

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

计算机网络体系结构分层

不难看出,TCP/IP 与 OSI 在分层模块上稍有区别。OSI 参考模型注重“通信协议必要的功能是什么”,而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”。

1. TCP/IP 的具体含义

从字面意义上讲,有人可能会认为 TCP/IP 是指 TCP 和 IP 两种协议。实际生活当中有时也确实就是指这两种协议。然而在很多情况下,它只是利用 IP 进行通信时所必须用到的协议群的统称。具体来说,IP 或 ICMP、TCP 或 UDP、TELNET 或 FTP、以及 HTTP 等都属于 TCP/IP 协议。他们与 TCP 或 IP 的关系紧密,是互联网必不可少的组成部分。TCP/IP 一词泛指这些协议,因此,有时也称 TCP/IP 为网际协议群。

互联网进行通信时,需要相应的网络协议,TCP/IP 原本就是为使用互联网而开发制定的协议族。因此,互联网的协议就是 TCP/IP,TCP/IP 就是互联网的协议。

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

网际协议群

2. 数据包

包、帧、数据包、段、消息

以上五个术语都用来表述数据的单位,大致区分如下:

每个分层中,都会对所发送的数据附加一个首部,在这个首部中包含了该层必要的信息,如发送的目标地址以及协议相关信息。通常,为协议提供的信息为包首部,所要发送的内容为数据。在下一层的角度看,从上一层收到的包全部都被认为是本层的数据。

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

数据包首部

网络中传输的数据包由两部分组成:一部分是协议所要用到的首部,另一部分是上一层传过来的数据。首部的结构由协议的具体规范详细定义。在数据包的首部,明确标明了协议应该如何读取数据。反过来说,看到首部,也就能够了解该协议必要的信息以及所要处理的数据。包首部就像协议的脸。

3. 数据处理流程

下图以用户 a 向用户 b 发送邮件为例子:

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

数据处理流程

TCP/IP 中有两个具有代表性的传输层协议,分别是 TCP 和 UDP。

1. 端口号

数据链路和 IP 中的地址,分别指的是 MAC 地址和 IP 地址。前者用来识别同一链路中不同的计算机,后者用来识别 TCP/IP 网络中互连的主机和路由器。在传输层也有这种类似于地址的概念,那就是端口号。端口号用来识别同一台计算机中进行通信的不同应用程序。因此,它也被称为程序地址。

1.1 根据端口号识别应用

一台计算机上同时可以运行多个程序。传输层协议正是利用这些端口号识别本机中正在进行通信的应用程序,并准确地将数据传输。

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

通过端口号识别应用

1.2 通过 IP 地址、端口号、协议号进行通信识别

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

通过端口号、IP地址、协议号进行通信识别

1.3 端口号的确定

1.4 端口号与协议

2. UDP

3. TCP

3.1 三次握手(重点)

下面来看看三次握手的流程图:

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

三次握手

3.2 四次挥手(重点)

下面来看看四次挥手的流程图:

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

四次挥手

上面是一方主动关闭,另一方被动关闭的情况,实际中还会出现同时发起主动关闭的情况,

具体流程如下图:

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

同时挥手

3.3 通过序列号与确认应答提高可靠性

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

序列号和确认应答

3.4 重发超时的确定

3.5 以段为单位发送数据

3.6 利用窗口控制提高速度

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

3.7 滑动窗口控制

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

滑动窗口

3.8 窗口控制中的重发控制

在使用窗口控制中, 出现丢包一般分为两种情况:

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

部分确认应答丢失

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

高速重发控制

1. IP 地址

1.1 IP 地址概述

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

1.2 IP 地址由网络和主机两部分标识组成

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

IP地址的主机标识

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

IP地址的网络标识

1.3 IP 地址的分类

1.4 广播地址

1.5 IP 多播

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

1.6 子网掩码

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

2. 路由

2.1 IP 地址与路由控制

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

路由控制表与 IP 包发送

3. IP 分包与组包

3.1 路径 MTU 发现

4. IPv6

4.1 IPv6 的特点

4.2 IPv6 中 IP 地址的标记方法

4.3 IPv6 地址的结构

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

4.4 全局单播地址

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

全局单播地址

4.5 链路本地单播地址

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

链路本地单播地址

4.6 唯一本地地址

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

唯一本地地址

4.7 IPv6 分段处理

4.8 IP 首部(暂略)

5. IP 协议相关技术

5.1 DNS

5.2 ARP

5.3 ICMP

5.4 DHCP

5.5 NAT

5.6 IP 隧道

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

夹着 IPv4 网络的两个 IPv6 网络

协议地址结构_TCP/IP 协议 讲解相关推荐

  1. 协议地址结构_通信之路——用最简洁的文字告诉你互联网协议TCP/IP

    (建议在学习本篇知识时先阅读我关于OSI的文章) 在上一篇文章中,我们详细介绍了OSI模型,对每一层的功能和作用都做了解释说明.在文章的最后也说到,OSI是一个理想化的模型,因为在设计之初未能考虑到实 ...

  2. 计算机网络三:域名、IP地址和TCP/IP协议

    一.域名        域名(Domain Name),简称域名.网域,是由一串用点分隔的字符型标志名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时 ...

  3. 因特网的协议集称为TCP/IP协议集

    1)因特网协议集 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> ...

  4. 计算机网络自顶向下 利用分组嗅探器Wireshark俘获协议报文并分析IP协议

    利用分组嗅探器Wireshark俘获协议报文并分析IP协议 监察第一个返回的ICMP数据包,看自己的计算机的IP地址是什么? 在IPpacket 的头部,上层协议域的值是什么? IP header有多 ...

  5. IP协议详解(IP协议格式、IP地址管理、路由转发)

    目录 1. IP协议格式 2. IP地址管理 2.1 早期地址管理方式 2.2 CIDR方式 3. 网络层的路由转发 1. IP协议格式 如图: 4位版本:标识当前是ipv4协议. 4位首部长度:和T ...

  6. tcp ip协议_网络通信-TCP/IP协议族简述

    导读:计算机与网络设备要相互通信需要遵守同样的规则.例如,如何找到通信目标.该使用哪种语言通信.怎么结束通信等规则.不同的硬件.操作系统之间的通信都需要遵循同一种规则,这种规则也称为是协议.下面本文主 ...

  7. 协议系列之TCP/IP协议

    根据前面介绍的几种协议,将IP协议.TCP协议.UDP协议组合起来,于是便有了TCP/IP协议.现在很多的应用的通信都是建立在TCP/IP协议的基础上,运用非常广泛,很有必要对其学习一下. 打个不太恰 ...

  8. flag push tcp 作用_TCP/IP协议到底在讲什么?

    题主,你之所以不知道那套书在讲什么,是因为你还没有认识到网络协议有什么用,怎么用,以什么形式在使用,网络协议的概念很简单,就几句话,你只知道网络协议的概念,只知道很多大神都推荐这套书,都强调网络协议的 ...

  9. 计算机网路基础(IP地址、TCP/IP协议、三握四挥)

    IP地址 IP地址分类: A,B,C,D,E A,B,C --- 单播地址 D --- 组播地址 E --- 保留地址 (美国军方自己留的) 单播地址:一对一的通信,可以是位于不同广播域的设备进行交流 ...

最新文章

  1. java陷阱之自动拆箱
  2. oracle 求A中不存在于B的记录
  3. 英文版Windows XP操作系统的中文支持设置
  4. 图解|2018年度中国科学十大进展
  5. OpenStack看到中国“钱”景
  6. Ubuntu -- 安装、卸载程序的命令
  7. 电脑生成siri语音_米家智能台灯1S全新升级,支持小爱和Siri的语音控制
  8. python取出矩阵中的某一元素_将tensorflow.Variable中的某些元素取出组成一个新的矩阵示例...
  9. android5.1禁用通知栏,android-阻止通知栏
  10. Ableton Live 11 Suite for Mac(专业音乐创作软件)
  11. SAP license key developer access key
  12. chm文件打开出现已取消该网页的导航
  13. MOS开关管的选择及原理应用
  14. 四平师院计算机学院,永远的四平师院
  15. Linux的10个彩蛋
  16. 5G套餐降价,但价格真的是阻拦消费者升级5G的因素吗?
  17. dataBinding 理解
  18. postgresql + postgis 离线安装
  19. pythontuple数据类型_阿博的Python之路-详解Tuple数据类型
  20. BCT2186 1A低压差线性稳压器

热门文章

  1. HTTP协议/RTSP协议/RTMP协议的区别
  2. vue2.0中的:is和is的区别
  3. 前端人英语学习的那点事儿
  4. 阅读react-redux源码(七) - 实现一个react-redux
  5. Elasticsearch 深入3
  6. 小程序如何传数组数据到vs后台中
  7. VM虚拟机显示不能铺满问题
  8. Spring @Value取值为null或@Autowired注入失败
  9. oracle安装中桌面模式与服务器模式的去别
  10. pHp中文网零基础,零基础编程