【linux】网络基础(1)

文章目录

网络基本概念

网络的定义

1.网络是指多个计算机系统通过通信链路连接在一起,以实现资源共享和数据交换的系统。

2.网络可以是有线的或无线的。

网络的类型

局域网(LAN)

覆盖小范围区域,如办公室或家庭。

广域网(WAN)

覆盖较大范围的网络,如城市、国家或全球范围的网络。

网络协议

计算机之间的传输媒介是光信号和电信号. 通过 "频率" 和 "强弱" 来表示 0 和 1 这样的信息. 要想传递各种不同的信息, 就需要约定好双方的数据格式

对于各种计算机的生产商不同,各种计算机装载的操作系统也会不同,这就导致计算机A传输的'0','1'信号,相对于计算机B所设定的'0','1'信号会有不同的表现,为了解决这个问题,就必须制作一个共同的标准,A.B等等都来遵守,就有了网络协议

OSI七层模型

分层名称 功能
物理层 负责物理媒体上的比特传输,如电缆、光纤。定义硬件设备和传输介质的规范。
数据链路层 负责节点间的帧传输和错误检测。包括MAC地址的处理。
网络层 负责数据包的路由和转发。使用IP地址进行寻址。
传输层 提供端到端的通信服务。包括TCP和UDP协议。
会话层 负责建立、管理和终止会话。管理数据交换的对话控制。
表示层 负责数据的格式化、加密和解密。处理数据的语法和语义。
应用层 提供网络应用服务。包括HTTP、FTP、SMTP等协议。

TCP/IP模型

TCP/IP模型的结构

TCP/IP模型是互联网的标准协议模型。
分为四层:网络接口层、互联网层、传输层和应用层。

分层名称 功能
应用层 : 负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等. 我们的网络编程主要就是针对应用层.
传输层 负责两台主机之间的数据传输. 如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送到目标主机
网络层 负责地址管理和路由选择. 例如在IP协议中, 通过IP地址来标识一台主机, 并通过路由表的方式规划出两台主机之间的数据传输的线路(路由).
数据链路层 负责将数据帧发送到物理网络中,并接收从物理网络传来的数据帧。

网络传输的基本流程

计算机与计算机之间的通信


例如上图,倘若主机A要给主机D发送消息,在这同一局域网内,主机B和主机C也可以收到主机A发送的消息,但是这两个主机经过信息处理发现并不是给自己的消息,会直接丢弃此消息,而主机D处理消息后发现是发给自己的,则会进行数据处理等一些操作。

计算机的信息处理

根据tcp/ip模型结构,发送信息是自上而下的对数据进行封装报头,而接受消息则是自下而上的对信息的报头进行解包分用

封装报头

相关推荐
小毛驴8507 分钟前
Linux 后台启动java jar 程序 nohup java -jar
java·linux·jar
一心0921 小时前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上1 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
你想考研啊2 小时前
三、jenkins使用tomcat部署项目
运维·tomcat·jenkins
tan180°2 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
代码老y2 小时前
Docker:容器化技术的基石与实践指南
运维·docker·容器
典学长编程3 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
wuk9983 小时前
基于MATLAB编制的锂离子电池伪二维模型
linux·windows·github
你想考研啊5 小时前
四、jenkins自动构建和设置邮箱
运维·jenkins
Code blocks5 小时前
使用Jenkins完成springboot项目快速更新
java·运维·spring boot·后端·jenkins