一、相关概念
1.广域网(WAN)
-
范围:覆盖广阔区域,如城市、国家或全球。
-
速度:传输速度较慢,延迟较高。
-
设备:使用路由器、调制解调器等,常依赖第三方服务提供商。
-
控制:由多个组织或服务提供商共同管理。
-
应用:用于连接不同地区的局域网,支持互联网访问、远程办公等。
2.局域网(LAN)
-
范围:覆盖较小区域,如家庭、办公室或校园。
-
速度:传输速度快,延迟低。
-
设备:常用交换机、路由器等连接设备。
-
控制:通常由单一组织管理。
-
应用:用于文件共享、打印、内部通信等。
3.交换机
-
用于在局域网(LAN)内连接多台设备(如计算机、打印机、服务器等)。
-
根据MAC地址(硬件地址)转发数据帧,实现设备之间的高效通信。
-
工作在OSI模型的数据链路层(第2层)。
4.路由器
-
用于连接不同的网络(如LAN和WAN),并在网络之间转发数据包。
-
根据IP地址(逻辑地址)决定数据包的传输路径,实现跨网络通信。
-
工作在OSI模型的网络层(第3层)。
5.IP地址
描述一个设备在网络上的位置,通过数字来描述。
本质上是32位,4个字节的整数。
“点分十进制”:使用三个“.”把这四个字节分成4分,每个部分1字节,取值范围0-255.
6.端口号
描述一个主机上的哪个应用程序
有了IP地址可以确定主机,但一个主机上可能有很多程序在使用网络。
主机收到网络数据就需要区分出是交给哪个程序使用数据。
每个程序在进行网络通信过程中,都需要有一个端口(可能是用户手动指定的,也可能是系统自动分配的)
同一个主机上,程序使用的端口不能冲突(端口号也是一个整数)
注:进行一次通信的过程中,涉及到IP和端口各有两个。(目的IP,目的端口,源IP,源端口)
7.协议
网络中非常核心的概念。
一种通信过程中的约定(发送方和接收方需要提前商量好,数据的格式,才能确保两者之间能够正确沟通)
通信双方的计算机可能来自不同的厂商,为了确保任意的两台计算机之间都能够进行网络通信,就要求这些计算机都要遵守相同的网络协议。
8.五元组
1.源IP:标识原主机
2.源端口号:标识源主机中该次通信发送数据的进程
3.目的IP:标识目的主机
4.目的端口号:标识目的主机中该次通信接受数据的进程
5.协议号:标识发送进程和接收进程双方约定的数据格式
9.拆分
网络通信过程中,需要涉及到的细节是非常多的。
如果用一个协议来完成网络通信,就要约定好方方面面的内容 => 协议非常复杂
拆分=> 就是把一个高大全的协议拆分成多个功能更单一的协议。
为了让拆分出来的协议要更好的相互配合,引入了协议分层。
把功能定位相似的放到同一层。
上层协议调用下层协议的功能,下层协议给上层协议提供服务。
只有相邻的层次之间可以进行沟通,不能跨层次调用。
协议分层的优点:让一个复杂的协议变成多个简单的协议。
1.上层协议直接调用下层协议即可,不需要了解下层协议的细节。(相当于下层协议把细节封装好了)
2.某一层协议进行替换后对上层没什么影响
10.TCP/IP五层网络协议
应用层:负责应用程序间的沟通 (网络编程主要针对应用层)
传输层:负责关注网络数据包起点和终点,端到端之间的传输
网络层:负责关注起点终点之间应该走哪条路(路线规划)
数据链路层:负责两个相邻节点之间的传输
物理层:通信过程中的基础设施。