TCP/IP协议组

TCP/IP通信协议是目前最完整、使用最广泛的通信协议。它的魅力在于可使不同硬件结构、不同操作系统的计算机相互通信。TCP/IP协议既可用于广域网,也可用于局域网,它是Internet/Intranet的基石。TCP/IP通信协议事实上是一组协议。

 TCP/IP协议可分为5层也可分为4层,数据链路层和物理层可被被视为网络接口层

应用层:

每个应用层协议定义了客户端能够向服务器端发送哪些请求(也可以认为是哪些命令,这些命令发送的顺序),服务器端能够向客户端返回哪些响应,这些请求报文和响应报文都有哪些字段,每个字段实现什么功能,每个字段的各种取值所代表的意思。

传输层:

传输层有两个协议,TCP和UDP。如果要传输的数据需要分成多个数据包发送,发送端和接收端的TCP协议确保接收端最终完整无误收到所传数据。如果在传输过程中出现丢包,发送端会超时重传丢失的数据包;如果发送的数据包没有按发送顺序到达接收端,接收端会把数据包在缓存中排序,等待迟到的数据包,最终收到连续、完整的数据。

UDP协议用于一个数据包就完成数据发送的情景,这种情况就不检查是否丢包,数据包是否按顺序到达了,以及数据发送是否成功,都由应用程序判断。UDP协议要比TCP协议简单得多。

网络层:

网络层协议负责在不同网段转发数据包,为数据包选择最佳转发路径,网络中的路由器负责在不同网段转发数据包,为数据包选择转发路径,因此我们称路由器工作在网络层,是网络层设备。

 数据链路层:

数据链路层协议负责把数据包从链路的一端发送到另一端。网络设备由网线或线缆连接,连接网络设备的这段网线或线缆称为一条链路。在不同的链路上传输数据有不同的机制和方法,也就是不同的数据链路层协议,比如以太网使用CSMA/CD协议,点到点链路使用PPP协议。

物理层:

 物理层定义网络设备接口有关的一些特性,进行标准化,比如接口的形状、尺寸、引脚数目和排列、固定和锁定装置、接口电缆的各条线上出现的电压范围等规定,可以认为是物理层协议。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/81940.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Sentinel dashboard无法查询到应用的限流配置问题以及解决

一。问题引入 使用sentinle-dashboard控制台 项目整体升级后,发现控制台上无法看到流控规则了 之前的问题是无法注册上来 现在是注册上来了。结果看不到流控规则配置了。 关于注册不上来的问题,可以看另一篇文章 https://blog.csdn.net/a15835774652/…

【云卓笔记】mavlink java文件

根据飞控提供的xml文件来生成的 生成的就是这样的java文件 准备工作: Mavlink协议生成 参考 1.安装mavlink : 使用MAVLink工具的要求是 Python 3.3 (recommended) or Python 2.7 Python future模块 (可选) PythonTklnter模块(如果需要使用图形用户界面)。 环境变量PYTHO…

【Linux】【驱动】第一个相对完整的驱动编写

【Linux】【驱动】第一个相对完整的驱动编写 续1.驱动部分的代码2 app 代码3 操作相关的代码 续 这个章节会讲述去直接控制一个GPIO,高低电平。 因为linux不允许直接去操作寄存器,所以在操作寄存器的时候就需要使用到函数:ioremap 和iounma…

windows安装新openssl后依然显示旧版本

1、Windows环境下安装升级新版本openssl后,通过指令openssl version -a查看版本号:如下 这个版本号还是是以前的老版本,看来得把原先的老版本删除掉才可以生效,但是不知道在哪里。 2、网上找了老半天也没找到答案,最后…

Linux安装rabbitmq整合版本

rabbitmq和erlang对应版本 https://www.rabbitmq.com/which-erlang.html erlang下载地址 Otp 24.1.7 - Erlang/OTP wget https://github.com/erlang/otp/releases/download/OTP-24.1.7/otp_src_24.1.7.tar.gz socat下载地址 RPM resource socat(x86-64) (rpmfind.net) rab…

pnpm无法加载文件 (解决方法 )

现在要运行一个TS的项目,我的电脑上没有安装pnpm,导致我的vscode一直报错无法加载。 pnpm安装: npm install -g pnpm pnpm : 无法加载文件 pnpm : 无法加载文件 C:\Users\HP\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运…

【AutoLayout案例04-游戏图片-按钮适配 Objective-C语言】

一、好,我们再看一个案例, 刚才,这个案例, 这么一个案例 这个案例,是什么意思呢, 这里给大家做一个3.5英寸、4.0英寸的屏幕适配, 因为我们这里图片,只有一个,就是4英寸的这么一个图片 什么意思呢,要求我们在3.5英寸的屏幕、和4英寸的屏幕的时候,都能正常显示这个图…

Java集合框架扫盲

文章目录 一、故事背景二、知识点主要构成1、List1.1、ArrayList1.1.1、添加元素1.1.2、删除元素1.1.3、修改元素1.1.4、遍历元素 1.2、LinkedList1.2.1、添加元素1.2.2、删除元素1.2.3、修改元素1.2.4、遍历元素 1.3、Vector 2、Set2.1、HashSet2.2、LinkedHashSet2.3、TreeSe…

启动audit服务报错

启动centos audit服务报错 错误信息 $service auditd restart Stopping logging: [FAILED] Redirecting start to /bin/systemctl start auditd.service Job for auditd.service failed because the control process exited with error code. See “systemctl status auditd.s…

java-CyclicBarrier、CountDownLatch、Semaphore 的用法以及 volatile 关键字的作用

CyclicBarrier、CountDownLatch、Semaphore 的用法 1. CountDownLatch(线程计数器 ) CountDownLatch 类位于 java.util.concurrent 包下,利用它可以实现类似计数器的功能。比如有一个任务 A,它要等待其他 4 个任务执行完毕之后才…

Selenium环境+元素定位大法

selenium 与 webdriver Selenium 是一个用于 Web 测试的工具,测试运行在浏览器中,就像真正的用户在手工操作一样。支持所有主流浏览器 WebDriver 就是对浏览器提供的原生API进行封装,使其成为一套更加面向对象的Selenium WebDriver API。 使…

08-信息收集-架构、搭建、WAF等

信息收集-架构、搭建、WAF等 信息收集-架构、搭建、WAF等一、前言说明二、CMS识别技术三、源码获取技术四、架构信息获取技术五、站点搭建分析1、搭建习惯-目录型站点2、搭建习惯-端口类站点3、搭建习惯-子域名站点4、搭建习惯-类似域名站点5、搭建习惯-旁注,c段站点…