首页 > 其他分享 >TCP/IP协议

TCP/IP协议

时间:2024-03-21 12:59:47浏览次数:20  
标签:协议 IP 模型 网络 TCP 应用层

目录

第一层:网络接口层:

第二层:网络互联层:

第三层:传输层:

第四层:应用层。

TCP/IP模型与OSI模型有着很多共同点:

两者的不同点:


 OSI参考模型的概念清楚,理论完整,但它既复杂又不实用;因此我们从OSI参考模型 转到另一个模型,该模型不仅被所有广域计算机网络的鼻祖ARPANET所采用,而且广泛应 用的因特网Internet所使用,这就是TCP/IP模型,它以其中最主要的传输控制协议TCP/网际 协议Ip所命名。

<TCP/IP模型的起源>

TCP/IP模型起源于ARPANET网络,该网络是由美国国防部所资助的一个研究型网络,它初 始的目标是:以无缝的方式将多个不同种类的网络相互联接起来,如电话网络、卫星、无 线网络。后来由于美国国防部担心一些贵重的主机、路由器、网关可能会在片刻间被来自 前苏联的攻击而突然崩溃,所以又延伸出其另一个重要的设计目标一一即使在损失子网硬 件的情况下网络还能够继续工作,原有的会话不能被打断。1989年正式形成了现在的 TCP/IP模型,得到了广泛的应用和支持,并成为事实上的国际标准和工业标准。

<TCP/IP模型的层次结构>

TCP/IP模型分为四个层次:应用层,传输层,网络互联层和网络接口层。在TCP/IP模型 中,去掉了0Sl参考模型中的会话层和表示层(这两层的功能被合并到应用层实现)。同 时将0SI参考模型中的数据链路层和物理层合并为网络接口层。下面我们从最底层开始,依次讨论该模型中的每一层。

第一层:网络接口层:

该层主要功能是负责与物理网络的连接。实际上TCP/IP模型没 有真正描述这一层的实现,只是要求能够提供给其上层-一网络互连层一个访问接口,以 便在其上传递IP分组。由于这一层次未被定义,所以其具体的实现方法将随着网络类型的不同而不同。

第二层:网络互联层:

网络互联层是将整个网络体系结构贯穿在一起的关键层,它的 功能是把数据分组发往目标网络或主机。同时,为了尽快地发送分组,允许分组沿不同的 路径同时进行传递。因此,分组到达的顺序和发送的顺序可能不同,这就需要其上层(传 输层)对分组进行排序。

网络互联层定义了标准的数据分组格式和协议,即IP协议(Internet Protocol),与之 相伴的还有一个辅助协议ICMP协议。

网络互联层的任务是将IP分组投递到它们应该去的地方,很显然,IP分组的路由是最 重要的问题,同时还需要完成拥塞控制的功能。

第三层:传输层:

传输层的功能是使源主机和目标主机上的对等实体可以进行会话。

该层上定义了两种服务质量不同的协议。即:传输控制协议TCP (transmission control protocol)和用户数据报协议UDP (user datagram protocol)。

TCP协议是一个面向连接的、可靠的协议,允许从一台主机发出的字节流无差错地发 往互联网上的其他主机。

在发送端,它负责把上层(应用层)传送下来的字节流分割成离散的报文,并把每个 报文传递给下层(网络互联层)。在接收端,它负责把收到的报文进行重组后递交给上层 (应用层)。

TCP协议还要处理端到端的流量控制,以便确保一个快速的发送方,不会因为发送太多的报文而淹没掉一个处理能力跟不上的慢速的接受方。

UDP协议是一个不可靠的、无连接协议,主要适用于不需要对报文进行排序和流量控 制的场合。其被广泛用于那些一次性的请求-应答应用,以及那些及时交付比精确交付更 加重要的应用,如传输语音或者视频。

第四层:应用层。

应用层简单包含了所需的任何会话和表示功能,它面向不同的网络 应用引入不同的应用层协议。最早的高层协议包括文件传输协议FTP (File Transfer Protocol)、虚拟终端协议TELNET、简单邮件传输协议SMTP,后来许多其他协议被加 入到了应用层,如超文本链接协议HTTP (Hyper Text Transfer Protocol),域名系统 DNS(Domain Name System),实时传输协议RTP (Real-time Transport Protocol)

<TCP/IP模型的特点>

TCP/IP模型能够打败法律意义上的国际标准ISO/Rm参考模型,而成为事实上的国际 标准,有它滋身的特点:

(1)首先它是一个开放的协议标准:可以免费使用,并且独立于特定的计算机硬 件与操作系统。

(2)其次它独立于特定的网络硬件:可以运行在局域网、广域网,更适用在五联 网中。

(3)其统一的网络地址分配方案,使得整个TCP/IP设备在网中都具有唯一的IP地 址。

(4)他所提供的标准化的高层协议,提供了多种可靠的用户服务。

<TCP/IP模型与OSI/Rm模型的比较>

TCP/IP模型与OSI模型有着很多共同点:

▶两者都以协议栈概念为基础,并且协议栈中的协议彼此相互独立。

▶两个模型功能大致相同,都采用了层次结构,存在可比的传输层和网络层,但 不是严格意义上的一一对应。

两者的不同点:

▶OSI模型的最大贡献在于明确区分了3个概念:服务、接口和协议;而TCP/Ip模型 并没有明确区分服务、接口和协议,因此oS1模型中的协议比TCP/IP模型中的协议 有更好的隐蔽性,当技术发生变化时OSI模型中的协议相对更容易被新协议所替换。

▶OS1模型在协议发明之前就已经产生了,而TCP/IP模型则正好相反:先有协议, TCP/IP模型只是已有协议的一个描述而已,这导致协议和模型结合得非常完美,能够解决很多实际问题,如异构网的互联问题。

▶两者在无连接和面向连接的通信领域有所不同:OSI模型的网络层同时支持无连 接和面向连接的通信,但是传输层只支持面向连接的通信;TCP/IP模型在网络层只支持一种模式(无连接),但是在传输层同时支持两种通信模式。

▶OS1模型有7层,而TCP/IP模型只有4层,两者在层次划分与使用协议上有很大差别,也正是这种差别使两个模型的发展产生了截然不同的局面。

标签:协议,IP,模型,网络,TCP,应用层
From: https://blog.csdn.net/hangweijie/article/details/136904973

相关文章

  • 蓝牙HFP协议推荐的语音丢包补偿算法浮点实现的定点化
    最近在做蓝牙的宽带语音通话。相对于蓝牙窄带语音,主要变化是把采样率从8k变到16k,以及编解码器从CVSD变成mSBC(modifiedSBC,改进的SBC)等。蓝牙语音通话相关的HFP(HandFreeProfile)强烈建议在宽带语音通话时要用上语音丢包补偿(packetlostconcealment,PLC)算法来保证丢包时的语音质量,......
  • IPV6
          ......
  • 玩转TypeScript-基础(转载)
    转载自:https://www.cnblogs.com/alexander3714/p/14268982.htmlPart1内容#安装typescript编译器#全局安装:npminstall-gtypescript在命令行中查看ts编译器版本判断是否安装成功。TypeScript文件默认以.ts为后缀,TypeScript是JavaScript的扩展,所以TypeScript代码要......
  • TCP/IP协议簇
         ......
  • 由版本不兼容问题引出的“pip 24.1 版本开始pip 将强制要求使用符合规范的依赖规范”
    故事的开始是……(其实是两个报错,一个是图中所示,一个是GPU问题)但是当我安装tensorboard出现了这种报错 查看报错,发现是版本问题 于是我尝试升级omegaconf版本,然后再次提醒版本问题这次不兼容的是fairseq和hydra-core,提示说这俩版本太高了 既然高那就降低版本,但是降低......
  • WinClip非官方复现代码学习笔记2
    一、数据集加载1.数据集放置将下载的数据集解压到datasets文件夹的下面,方便后续操作。2.数据集预处理数据集预处理针对两个数据集给了两个不同的预处理指令,我测试了VISA数据集,以下是我对VISA数据集的实例。1.datasets/prepare_visa_public.py文件配置打开这个文件,第1......
  • 尚硅谷Vue3入门到实战,最新版vue3+TypeScript前端开发教程
    1.创建Vue3工程npmcreatevue@latest或者npminitvue@latest输入项目名和需要的工具后进入项目如果项目报错使用命令安装Node.js的项目依赖包npmi启动vue项目,查看项目是否创建完成npmrundev直接删掉src然后创建src文件夹,在该文件夹中创建main.ts和App.vue文件......
  • 9.JavaWeb& javaScript基础
    目录导语:一、JavaWeb概述二、JavaScript基础概念:功能:1.基本语法(1)与html结合方式(2)注释(3)数据类型(4)变量(5)运算符(6)流程控制语句:(7)JS特殊语法:案例:99乘法表2.基本对象(1)Function:函数(方法)对象(2)Array:数组对象(3)Boolean(4)Date:日期对象(5)Math:数学对象(6)Number(7)String(8......
  • 大数据013_Linux(上传rz,下载sz,tar,zip,unzip)
    目录一、上传、下载1、通过鼠标操作(1)下载(2)上传2、通过命令操作rz、sz(1)下载sz(2)上传rz二、压缩、解压1、tar命令(1)压缩(2)解压2、zip命令压缩文件3、unzip命令解压文件一、上传、下载1、通过鼠标操作(1)下载将LInux系统中的文件下载到Windows上eg:在FinalShell......
  • JavaScript 中的函数式编程
    一、问题背景例子下面的代码是一个函数式编程的例子我们先观察一下里面有哪些特殊的语法点,再一一讲解constprogrammerOutput=[{name:'UncleBobby',linesOfCode:500,},{name:'SuzieQ',linesOfCode:1500,},{name:'JimmyGosl......