原文讲的不是特别细,为了便于理解,我颠倒了顺序。

写在开始

我们需要知道协议到底是什么。

在网络上,一个协议对应于管理系统之间如何相互通信的规则。

然后我们需要知道什么是协议族。

一个协议族是一系列协同工作的协议的集合。

什么是 TCP/IP 模型?

TCP/IP(传输控制协议/互联网协议)由 DARPA 在 20 世纪 70 年代提出。这个模型来自于 ARPANET,它同样也是个知名的“互联网模型”。TCP/IP 模型有四个抽象的层次,描述了总体的设计大纲,并实现了网络通信的具体协议。我们将会简短地讨论每个层次最为流行的协议。

1、网络访问层(数据连接 + 物理层)

网络访问层包括主机连接到物理网络所需要的硬件以及传送数据的协议。目标可以是网络上的其他主机,自己,或者远端的路由。互联网层具有整个互联网络的视图,而网络访问层仅限于像路由之类的第三层设备定义的物理层边界。

这个层次的协议取决于所使用的物理网络。如果物理网络是 LAN,那么通常使用的是以太网(802.3)协议以及它的变体,如果使用的是 WAN,常用的则是点对点协议(PPP)以及帧中继等协议。

比较出名的是以太网协议。两台电脑(主机)之间是通过网卡来进行发送和接收数据的。每个网卡都有一个独特的地址,也就是 MAC 地址。以太网数据以帧为单位,包括标头和数据部分。以太网在子网内以广播的形式发送数据。光有 MAC 地址并不能让两台主机之间相互通信,如果两台主机不在同一个子网,以太网协议就没辙了。这就要通过网络层来区分每台主机所在的网络是哪个子网。如果在同一个子网,就用广播发送数据,否则就用路由发送。这就导致了网络层的诞生。

2、网络层(互联网层)

网络层的主要任务是区分主机是不是在同一个子网。网络层将上一层(传输层)接收到的数据分发到目标主机(在同一个网络或者外部网络)。这层确保片段通过网络移动到目标网络。于是引入了所谓的网络地址,即网址。规定网络地址的协议就叫 IP 协议。所以网络地址也称 IP 地址。IP 协议的数据包放在以太网数据包的数据部分,也分为标头和数据两部分。有了 IP 协议,就可以在两个主机之间发送数据了,接下来的问题在于每台主机都有不同的应用,如何区分哪个数据包属于哪个程序?这就是传输层的由来。

3、传输层

传输层的主要任务是为应用层提供会话以及数据报通信服务。它接收应用层的数据,然后把它们分成更小的单元(标头和数据部分在网络层的数据部分),传输到网络层。

这层的任务是确保分割的单元在另一端正确地到达,它关心数据端到端的传输以及建立主机之间的逻辑连接,即所谓建立端口到端口的连接。网络层建立主机到主机的连接,只要有主机和端口,就能确定数据包属于哪个程序的。Unix 系统把主机 + 端口称之为套接字(Socket)。

这一层主要有两个协议:TCP 和 UDP。

4、应用层

这个层次让应用能够访问其他层次的服务,并且定义了让应用交换数据的协议。这一层添加了自己的标头并向下发送到传输层。这一层的主要任务是将接收到的数据包按照协议解读成各种类型的数据,并将要发送的数据打包进传输层。现在数据包的格式看起来是这样的(以 HTTP 为例):

|------| |------| |------| |------| |-------------------|
以太网标头 IP标头 TCP标头 HTTP标头 数据部分
这一层主要的协议有:HTTP、FTP、SMTP、Telnet、NFS、RIP 等等。

一分钟了解 TCP/IP 模型的更多相关文章

  1. OSI与TCP/IP模型之比较

    摘要:OSI参考模型和Internet模型(或称TCP/IP模型)作为计算网络发展过程影响力大的两大模型,它们共同之处是:都采用了层次结构的概念,从分析两者的异同入手,找出OSI的消亡和Interne ...

  2. TCP/IP模型的简单解释

    TCP/IP模型是互联网的基础.想要理解互联网,就必须理解这个模型.但是,它不好懂,我就从来没有搞懂过. 前几天,BetterExplained上有一篇文章,很通俗地解释了这个模型.我读后有一种恍然大 ...

  3. TCP/IP模型及OSI七层参考模型各层的功能和主要协议

    注:网络体系结构是分层的体系结构,学术派标准OSI参考模型有七层,而工业标准TCP/IP模型有四层.后者成为了事实上的标准,在介绍时通常分为5层来叙述但应注意TCP/IP模型实际上只有四层. 1.TC ...

  4. 网络通信协议三之TCP/IP模型详解

    TCP/IP模型 注:PDU:Protocol Date Unit:表示对等层之间传递的数据单位 TCP:Transmission Control Protocol:传输控制协议 UDP:User D ...

  5. OSI七层协议与TCP/IP模型

    OSI为Open System Interconnection的缩写,意为开放式系统互联,国际标准化组织(ISO,International Organization for Standardizat ...

  6. OSI与TCP/IP模型

    1 OSI参考模型 谈到网络不能不谈OSI参考模型,虽然OSI参考模型的实际应用意义不是很大,但其的确对于理解网络协议内部的运作很有帮助,也为我们学习网络协议提供了一个很好的参考.在现实网络世界里,T ...

  7. TCP/IP模型的一个简单解释

    TCP/IP模型是互联网的基础. 想要理解互联网,就必须理解这个模型.但是,它不好懂,我就从来没有搞懂过. 前几天,BetterExplained上有一篇文章,很通俗地解释了这个模型.我读后有一种恍然 ...

  8. 网络 OSI参考模型与TCP/IP模型

    ISO是国际标准化组织.OSI,开放互联系统.IOS,思科交换机和路由器的操作系统. TCP/IP模型是OSI模型的简化.所有的互联网协议都是基于OSI模型开发的. 分层:便于管理,每层只管理下层,总 ...

  9. OSI参考模型和TCP/IP模型基本知识

    OSI七层模型 为了解决网络之间的兼容性问题,实现网络设备间的相互通信,ISO于1984年提出的OSI参考模型(开放系统互连参考模型).但是由于种种原因,并没有一种完全忠实于OSI参考模型的协议族流行 ...

随机推荐

  1. Android开发实战之ViewPager实现向导界面

    当我们更新应用,或者第一次进入应用时都会有一个向导界面,介绍这个app的内容和使用方式. 如果你细心你会发现其实这就是个viewpager,本篇博文将介绍应用的向导界面是如何制作的.希 望本篇博文对你 ...

  2. 【POJ2151】Check the difficulty of problems

    题意 某场比赛有M道问题,T支队伍,和数字N给出每支队伍解决每道问题的概率. 问这场比赛满足下面两个条件的概率 1.每支队伍至少做出一道题 2.冠军队至少做出N道题. 分析 条件2是不是可以转化为 至 ...

  3. 通过Scanner从控制台获取数据

    ----------siwuxie095 Scanner类用于扫描从控制台输入的数据,可以接收字符串和基本数据类型的数据 Scanner类位于 java.util.Scanner 包中 Scanner ...

  4. Java多线程—JUC原子类

    根据修改的数据类型,可以将JUC包中的原子操作类可以分为4类. 1. 基本类型: AtomicInteger, AtomicLong, AtomicBoolean ;2. 数组类型: AtomicIn ...

  5. turntable

    1.业务流程 2.80001代码逻辑 3.80002代码逻辑 4抽奖概率计算

  6. JVM致命错误日志(hs_err_pid.log)解读

    JVM致命错误日志(hs_err_pid.log)解读 摘自:https://blog.csdn.net/u013938484/article/details/51811400 2016年07月02日 ...

  7. Mac/win下的docker容器和LAMP环境的安装(亲测)

    docker直接在官网下载就行了无需赘述 接下来就是在终端中运行docker docker ps 显示当前运行的容器 docker images 显示以及装在的镜像 接下来我们安装centos镜像 d ...

  8. PreparedStatement的setDate方法如何设置日期

    pstmt.setString(12, "to_char(sysdate,'YYYY-MM-DD HH24:MI:SS')");这样写不对,应该如何写 该方法用于将指定的参数设置为 ...

  9. 如何快速增加pdf书签,解除pdf限制

    一.需要的工具 福昕PDF阅读器 Foxit PDF Editor 2.2.1 build 1119 汉化版 下载地址:http://www.onlinedown.net/soft/51002.htm ...

  10. 马尔可夫决策过程MDP

    1. 马尔可夫模型的几类子模型 马尔科夫链(Markov Chain),了解机器学习的也都知道隐马尔可夫模型(Hidden Markov Model,HMM).它们具有的一个共同性质就是马尔可夫性(无 ...