TCP/IP协议

news/2024/5/19 20:43:30

TCP/IP 是一类协议系统,它是用于网络通信的一套协议集合

物理层

所谓的物理层,是指光纤、电缆或者电磁波等真实存在的物理媒介。这些媒介可以传送物理信号,比如亮度、电压或者振幅。对于数字应用来说,我们只需要两种物理信号来分别表示0和1,比如用高电压表示1,低电压表示0,就构成了简单的物理层协议

数据链路层

负责物理层面上的互联的、节点间的通信传输(例如一个以太网项链的2个节点之间的通信)

该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等

数据链路层,信息以帧(frame)为单位传输,帧代表一段有限的0/1序列。

数据链路层协议的功能就是识别0/1序列中所包含的帧。比如说,根据一定的0/1组合识别出帧的起始和结束

在帧中,有收信地址(Source, SRC)和送信地址(Destination, DST),以及能够探测错误的校验序列(Frame Check Sequence)。当然,帧中最重要的是所要传输的数据 (payload),链路层协议不关心数据中包含什么。帧就像是一个信封,把数据包裹起来

以太网和WiFi是现在最常见的链路层协议。通过链路层协议,我们可以建立局域以太网或者WiFi局域网,并让位于同一局域网络中的两台计算机通信

数据链路层协议的代表包括:ARP、RARP、SDLC、HDLC、PPP、STP、帧中继等 

网络层

如何让WiFi上的一台计算机和以太网上的另一台计算机通信呢?

我们需要一个“中间人”。这个“中间人”必须有以下功能:

1. 能从物理层上在两个网络上接收和发送0/1序列,

2. 能同时理解两种网络的帧格式

路由器(router)就是为此而产生的“中间人”。一个路由器有多个网卡(NIC),每个NIC可以接入多个网络,并理解相应的链路层协议。在帧经过路由到达另一个网络的时候,路由会读取帧的信息,改写后发送到另一个网络

WiFi上的计算机 -> 路由WiFi接口 ->  路由以太网接口 -> 以太网上的计算机

网络层协议的代表包括:IP、IPX、RIP、OSPF等 

传输层

上面的三层协议让不同的计算机之间可以通信。但计算机中实际上有许多个进程,每个进程都可能有通信的需求。如何让信息发送到指定进程?

传输层协议,比如TCP和UDP,使用端口号(port number)来识别收信人(某个进程)

包括的协议如下:

TCP:传输控制协议,传输效率低,可靠性强

UDP:用户数据报协议,适用于传输可靠性要求不高,数据量小的数据(比如QQ)

DCCP、SCTP、RTP、RSVP、PPTP等协议

 

应用层

通过上面的几层协议,我们已经可以在任意两个进程之间进行通信。不同进程可能来自不同的行业,不同行业的用语规范不尽相同,格式不同或者有加密的需求,应用层协议是对信息内容做进一步的用语规范

应用层的协议包括用于Web浏览的HTTP协议,用于传输文件的FTP协议,用于Email的IMAP等等


http://www.mrgr.cn/p/07725871

相关文章

分冶算法 剑指 07 重建二叉树 排序算法:剑指45 把数组排成最小的数 10-I 斐波那契数列

来记录几个注意事项 1.vector容器里利用find&#xff08;&#xff09;函数 不同于map&#xff08;map有find方法&#xff09;&#xff0c;vector本身是没有find这一方法&#xff0c;其find是依靠algorithm来实现的。 所以要包含头文件 #include <iostream> #include <…

特定Adreno GPU的Android设备发生冻屏问题

1&#xff09;特定Adreno GPU的Android设备发生冻屏问题 ​2&#xff09;Unity版本升级后&#xff0c;iOS加载UnityFramework bundle闪退 3&#xff09;关于RectTransfrom.rect在屏幕空间中表示的相关问题 4&#xff09;Unity Mesh泄露问题 这是第345篇UWA技术知识分享的推送&a…

计算机网络——应用层

文章目录 **1 网络应用模型****2 域名系统DNS****3 文件传输协议FTP****4 电子邮件****4.1 电子邮件系统的组成结构****4.2 电子邮件格式与MIME****4.3 SMTP和POP3** **5 万维网WWW****5.1 HTTP** 1 网络应用模型 客户/服务器模型 C/S 服务器服务于许多来自其他称为客户机的主…

ElementUI Select选择器如何根据value值显示对应的label

修改前效果如图所示&#xff0c;数据值状态应显示为可用&#xff0c;但实际上仅显示了状态码1&#xff0c;并没有显示其对应的状态信息。在排查了数据类型对应关系问题后&#xff0c;并没有产生实质性影响&#xff0c;只好对代码进行了如下修改。 修改前代码&#xff1a; <…

CSS鼠标样式(cursor)

CSS cursor 属性值 属性值示意图描述auto默认值&#xff0c;由浏览器根据当前上下文确定要显示的光标样式default 默认光标&#xff0c;不考虑上下文&#xff0c;通常是一个箭头none不显示光标initial将此属性设置为其默认值inherit从父元素基础 cursor 属性的值context-menu…

学习React(四)

学习React&#xff08;四&#xff09; componentWillMount&#xff08;被放弃使用&#xff09;rendercomponentDidMountshouldComponentUpdate(nextProps,nextState)componentWillUpdate&#xff08;被放弃使用&#xff09;componentDidUpdatecomponentWillReceiveProps&#x…

Excel修改日期格式,改变日期的筛选方式

我们有两列日期数据&#xff1a; 左边这一列筛选会显示&#xff1a; 右边这一列筛选会显示&#xff1a; 修改格式&#xff0c;将【日期1】改为【日期2】 将【日期1】的格式修改为文本格式即可 修改格式&#xff0c;将【日期2】改为【日期1】 选中日期2&#xff0c;点击【数据…

7月31日每日两题

第一题:再解炸弹人 小哼最近爱上了“炸弹人”游戏。你还记得在小霸王游戏机上的炸弹人吗?用放置炸弹的方法来消灭敌人。需将画面上的敌人全部消灭后,并找到隐藏在墙里的暗门才能过关。 现在有一个特殊的关卡如下。你只有一枚炸弹,但是这枚炸弹威力超强(杀伤距离超长,可…

铁路关基保护新规:优先采购安全可信的网络产品和服务!

《征求意见稿》第十四条提到&#xff1a;运营者应当加强供应链安全保护&#xff0c;优先采购安全可信的网络产品和服务&#xff1b;采购网络产品和服务影响或者可能影响国家安全的&#xff0c;运营者应当预判网络产品和服务投入使用后可能带来的国家安全风险&#xff0c;按照国…

Openlayers实战:绘制多边形,导出CSV文件

CSV(Comma-Separated Values)是一种常用的数据交换格式,是一种纯文本文件格式。在Openlayers的交互中,经常性的我们要导出一些数据,在这个实战中,演示的是导出CSV文件。 安装依赖 npm install file-saver --save npm install papaparse --save 效果图 导出的文件 源代码…

yellowbrick:一款特征工程可视化神器!

在建立模型之前一个非常重要的工作就是做特征工程&#xff0c;而在特征工程的过程中&#xff0c;探索性数据分析又是必不可少的一部分。 本次介绍一款功能十分强大的特征工程可视化工具&#xff1a;yellowbrick&#xff0c;包括雷达、一维排序、PCA、特征重要性、递归消除、正…

k8s安装Jenkins

目录 ​编辑 一、环境准备 1.1 环境说明 二、安装nfs 2.1 安装NFS 2.2 创建NFS共享文件夹 2.3 配置共享文件夹 2.4 使配置生效 2.5 查看所有共享目录 2.6 启动nfs 2.7 其他节点安装nfs-utils 三、创建PVC卷 3.1 创建namespace 3.2 创建nfs 客户端sa授权 3.3 创建…

Github 霸榜!竟是阿里技术官的微服务分布式项目实战笔记总结

一个初创公司的老板带着他们的技术负责人来做技术交流&#xff0c;他们列了一长串问题&#xff0c;有微服务技术选型方面的&#xff0c;有技术难点方面的。这些问题如果不能快速解决&#xff0c;那么就会影响产品质量、上线进度&#xff0c;进而直接影响业务。 这是很多企业常…

CAN学习笔记1:计算机网络

计算机网络 1 概述 计算机网络就是把多种形式的计算机用通信线路连接起来&#xff0c;并使其能够互相进行交换的系统。实际上&#xff0c;计算机网络包括了计算机、各种硬件、各种软件、组成网络的体系结构、网络传输介质和网络通信计数。因此&#xff0c;计算机网络是计算机…

“程序员求职攻略:IT技术岗面试的必备技巧“

文章目录 每日一句正能量前言分享面试IT公司的小技巧IT技术面试有哪些常见的问题&#xff1f;分享总结遇到过的面试题后记 每日一句正能量 人活一世&#xff0c;不在乎朋友多少&#xff0c;不问财富几车&#xff0c;关键看在你最困难的时候&#xff0c;是否有一个伸出援手的人&…

直播预告 | 开源运维工具使用现状以及可持续产品的思考

运维平台自上世纪90年代开始进入中国市场&#xff0c;曾形成以传统四大外企&#xff1a;IBM、BMC、CA、HP为代表的头部厂商&#xff0c;还有一众从网管起家的国内厂商。2010年前后&#xff0c;出现了以Zabbix、Nagios、Cacti为代表的开源工具&#xff0c;后来又陆续出现了Prome…

应用无线鼠标中的2.4GHz无线收发芯片

无线键盘和无线鼠标作为现代办公环境中常见的工具&#xff0c;为我们的工作带来了便利。无线键盘和无线鼠标的工作原理都是基于无线技术实现的&#xff0c;其中常见的是2.4GHz无线技术。让我们一起来详细了解一下它们的工作原理。 无线鼠标的原理非常简单,鼠标部分工作与传统鼠…

使用docker-compose搭建lnmpr环境

源码gitee compose 使用的三个步骤&#xff1a; • 使用 Dockerfile 定义应用程序的环境。 • 使用 docker-compose.yml 定义构成应用程序的服务&#xff0c;这样它们可以在隔离环境中一起运行。 • 最后&#xff0c;执行 docker-compose up -d 命令来启动并运行整个应用程序…

C++笔记之迭代器失效问题处理

C笔记之迭代器失效问题处理 code review! 参考博文&#xff1a;CSTL迭代器失效的几种情况总结 文章目录 C笔记之迭代器失效问题处理一.使用返回新迭代器的插入和删除操作二.对std::vector 来说&#xff0c;擦除&#xff08;erase&#xff09;元素会导致迭代器失效 一.使用返回…

小白三步即可设置企业在线帮助中心?

设置企业在线帮助中心是提升客户服务质量和用户体验的重要举措。以下将介绍三个简单的步骤&#xff0c;帮助企业建立一个高效的在线帮助中心。 第一步&#xff1a;规划与设计 在设置企业在线帮助中心之前&#xff0c;需要进行一定的规划和设计工作&#xff0c;确保帮助中心能够…