目录
[1.1 网络](#1.1 网络)
[1.2 互联网](#1.2 互联网)
[1.3 ip地址](#1.3 ip地址)
[1.3.1 ip地址的作用](#1.3.1 ip地址的作用)
[1.3.2 ip地址分类](#1.3.2 ip地址分类)
[1.4 MAC地址](#1.4 MAC地址)
[1.4.1 MAC地址与IP地址的关系](#1.4.1 MAC地址与IP地址的关系)
[1.5 网络协议](#1.5 网络协议)
[2.1 应用层](#2.1 应用层)
[2.2 表示层](#2.2 表示层)
[2.3 会话层](#2.3 会话层)
[2.4 传输层](#2.4 传输层)
[2.5 网络层](#2.5 网络层)
[2.6 数据链路层](#2.6 数据链路层)
[2.7 物理层](#2.7 物理层)
一、网络基本概念
1.1 网络
网络是指将各种不同的事物或个体连接起来,使它们可以相互交流和互相影响的系统。在计算机领域中,网络通常指的是计算机网络,即利用通信设备和技术将多台计算机连接在一起,以实现信息和资源的共享。网络可以是局域网(LAN)、广域网(WAN)或互联网等不同范围和规模的连接。通过网络,人们可以远程交流、共享数据、获取资源、进行在线娱乐等各种活动。
网络设备:交换机、路由器、集线器
传输介质:双绞线、同轴电缆、光纤
1.2 互联网
互联网是指全球各种网络相互连接而成的巨大网络系统,通过标准的通信协议相连,实现了全球范围内的信息共享和资源交换。互联网的概念最早起源于20世纪60年代美国的军事研究领域,后来逐渐演变成一种全球性的信息交流和传播平台。通过互联网,人们可以在全球范围内进行实时通信、获取各种信息、进行在线交易和互动等各种活动。
简而言之,多个网络连接起来就构成了互联网。
1.3 ip地址
IP地址(Internet Protocol Address)是互联网上用于标识和定位计算机或其他网络设备的数字标识。**ip地址即互联网协议地址。**在互联网通信中,每台连接到互联网的设备都会被分配一个唯一的IP地址,类似于寻找房子时使用的地址。IP地址由一系列数字组成,通常以点分十进制表示,例如:192.168.1.1。
1.3.1 ip地址的作用
IP地址的作用是在互联网上唯一标识每个连接的设备,使得数据包能够准确地被发送到目标设备。通过IP地址,数据包在网络中的传输路线得以确定,确保信息能够准确地被发送到目标地址。IP地址的概念是互联网通信的基础,无论是浏览网页、发送电子邮件、进行视频通话还是其他网络活动,IP地址都扮演着重要的角色。
1.3.2 ip地址分类
IPv4地址由32位二进制表示,一般用点分十进制表示,如:192.168.1.1,分成 4 个字节,每个字节对应 0 - 255 的十进制数。它已经成为互联网的主要使用方式;
IPv6地址则采用128位二进制表示,用冒号分隔的十六进制表示,它用于解决IPv4地址空间不足的问题。如 2001:0db8:85a3:0000:0000:8a2e:0370:7334
。
1.4 MAC地址
MAC地址(Media Access Control Address)是网络设备(如计算机、路由器、网络打印机等)网卡上的物理地址,用于在局域网中唯一标识网络设备。MAC地址通常是一个由12个十六进制数(0-9,A-F)组成的值,如:00:1A:2B:3C:4D:5E。MAC地址是在网络设备制造时固定烧录在网卡上的,独一无二的。
与IP地址不同,MAC地址是硬件层面的地址,用于在局域网内直接通信。当设备在局域网内进行通信时,会根据目标设备的MAC地址来确定数据包的传输目标。每个网络设备都有一个唯一的MAC地址,这样数据包就能够准确地发送到目标设备。
MAC地址通常用于局域网内部通信,而IP地址则用于在广域网(如互联网)中唯一标识设备。在数据包传输过程中,源设备会使用目标设备的IP地址来寻址,并在局域网内通过目标设备的MAC地址来定位。MAC地址在网络通信中起着重要的作用,帮助数据包在局域网中正确地传输到目标设备。
1.4.1 MAC地址与IP地址的关系
MAC地址(Media Access Control address)和IP地址(Internet Protocol address)是网络中两个不同的地址概念。它们之间的关系是:
-
MAC地址是网络设备(如网卡)的唯一标识符,由设备的制造商预先分配。MAC地址是全球唯一的,用于在局域网中唯一标识一个设备。
-
IP地址是分配给网络设备的逻辑标识符,用于在Internet上唯一标识一台设备或网络。IP地址允许设备在网络上进行通信和交换数据。
-
在数据包传输过程中,源设备将数据包封装在帧中,帧中包含目的设备的MAC地址。然后,数据包通过局域网中的交换机根据目的MAC地址传递到相应设备。
-
一旦数据包到达目标设备,目标设备将解析数据包中的IP地址,确定数据包是否是发给自己的。如果是,则目标设备将处理数据包。
因此,MAC地址和IP地址之间的关系是,MAC地址用于在局域网中唯一标识设备以进行数据帧传输,而IP地址用于在Internet上唯一标识设备以进行数据包路由和通信。
例如,在一个局域网中,计算机 A 要向计算机 B 发送数据,首先根据计算机 B 的 IP 地址,通过路由器等设备找到计算机 B 所在的局域网,然后在局域网内通过计算机 B 的 MAC 地址将数据帧准确发送到计算机 B。
1.5 网络协议
网络协议就是一组网络规则的集合。
HTTP:超文本传输协议
TCP:传输控制协议,是一种面向连接的,可靠的,基于字节流的传输层通信协议
UDP:用户数据报协议
IP:互联网协议
ARP:地址解析协议,根据IP地址获取MAC地址的协议
RARP:逆地址解析协议
二、网络分层模型
网络分层:OSI模型 tcp/ip模型
应用层 应用层
表示层 传输层 tcp/udp协议
会话层 网络层
传输层 数据链路层
网络层
数据链路层
物理层
2.1 应用层
在计算机网络中,应用层是网络体系结构的最顶层,负责为用户提供网络服务和应用程序。应用层的功能主要包括:
-
数据格式化:应用层定义了数据的格式和结构,确保不同设备和应用程序之间能够正确解释和处理数据。
-
数据传输:应用层负责数据的传输和交换,包括数据的发送、接收、传输和存储。
-
用户界面:应用层提供用户友好的界面,以便用户与网络进行交互和通信。
-
安全性:应用层通过加密和认证等技术保护数据的安全性和隐私性。
应用层的设备包括各种网络应用程序和服务,例如Web浏览器、电子邮件客户端、文件传输协议(FTP)客户端、域名系统(DNS)等。这些应用程序和服务都是建立在应用层协议(如HTTP、SMTP、FTP、DNS等)之上,通过网络进行通信和交换数据。通过应用层协议的支持,不同设备和应用程序能够相互通信和协作,实现各种功能和服务。
2.2 表示层
表示层是计算机网络体系结构中的第六层,位于应用层和会话层之间,主要负责数据的转换、加密和压缩,以便应用层可以正确地解释和处理数据。表示层的功能包括:
-
数据格式转换:表示层将不同数据格式之间的数据进行转换,确保数据在传输过程中能够被正确地解释和处理。
-
数据加密:表示层负责对数据进行加密和解密,以保护数据的安全性和隐私性。
-
数据压缩:表示层可以对数据进行压缩,减少数据传输的时间和网络带宽消耗。
-
数据解释:表示层将数据转换为应用层能够理解的格式,确保不同设备和应用程序之间能够正确地交换和处理数据。
表示层的功能主要是为了解决应用程序之间数据的格式和结构差异,以便数据能够在网络上正确地传输和解释。通过表示层的支持,不同设备和应用程序之间可以进行数据的交换和通信,实现各种功能和服务。
2.3 会话层
会话层是计算机网络体系结构中的第五层,位于表示层和传输层之间,主要负责建立、管理和终止网络中的会话或连接。会话层的功能包括:
-
会话管理:会话层负责建立、维护和终止应用程序之间的会话,以确保数据能够在通信过程中正确地传输和接收。
-
对话同步:会话层处理数据传输的顺序和同步,确保数据在传输过程中不会丢失或重复。
-
数据流控制:会话层负责控制数据的流量,避免数据传输过程中出现拥塞或数据丢失的情况。
-
错误恢复:会话层处理数据传输中可能出现的错误或中断,确保数据传输的完整性和可靠性。
会话层的功能主要是为了管理和维护网络中的会话和连接,确保数据能够在应用程序之间正确地传输和交换。在网络通信过程中,会话层起着重要的作用,保证数据的可靠传输和通信的顺利进行。常见的会话层协议包括NetBIOS、RPC等。
2.4 传输层
传输层是计算机网络体系结构中的第四层,位于网络层和应用层之间,主要负责在通信的端到端节点之间提供可靠的数据传输服务。传输层的功能包括:
-
数据传输:传输层负责将数据从源主机传输到目标主机,确保数据在传输过程中的完整性和可靠性。
-
分段与重组:传输层将应用层传输过来的数据分成适合网络传输的数据段,并在目的地重新组装这些数据段。
-
差错检测与恢复:传输层负责检测数据传输过程中可能出现的传输错误,并进行相应的差错恢复,保证数据的准确传输。
-
拥塞控制:传输层负责监测网络的拥塞情况,调整数据传输的速率,以避免网络拥塞和提高网络性能。
-
多路复用与分解:传输层通过端口号实现多路复用,将来自不同应用程序的数据传输合并到一个连接中,同时在接收端根据端口号进行分解,将数据传输到相应的应用程序。
常见的传输层协议包括TCP(传输控制协议)和UDP(用户数据报协议),这些协议实现了传输层的功能,确保网络通信中数据的可靠传输和有效传送。传输层使用的设备包括传输层协议栈、传输层网关、传输层路由器等。
2.5 网络层
网络层是计算机网络体系结构中的第三层,位于数据链路层和传输层之间,主要负责在互联网络中实现数据包的路由和转发。网络层的功能包括:
-
路由选择:网络层负责选择最佳的数据传输路径,通过路由算法确定数据包从源主机到目的主机的传输路径。
-
数据包转发:网络层负责在网络中的不同节点之间转发数据包,确保数据包按照预定的路由路径正确传递。
-
分组传输:网络层将数据转换为数据包(分组)进行传输,保证数据在网络中的可靠传输。
-
IP地址分配:网络层使用IP地址来唯一标识网络中的设备,负责IP地址的分配和管理。
-
路由器通信:网络层通过路由器进行通信,路由器是实现网络层功能的关键设备,负责数据包的转发和路由选择。
-
网络互联:网络层通过互联网协议(IP)实现不同网络之间的互联,实现跨网络的数据通信。
网络层使用的协议主要是IP协议(Internet Protocol),在因特网和其他网络中起到关键作用。网络层的设备包括路由器、三层交换机、防火墙等,这些设备协同工作以实现网络层的功能,确保数据包在网络中的正确传输和路由。
2.6 数据链路层
数据链路层是计算机网络体系结构中的第二层,位于物理层和网络层之间,主要负责在直接相连的两个节点之间传输数据。数据链路层的功能包括:
-
数据封装和解封装:数据链路层将网络层传输的数据包封装成帧进行传输,接收端再将接收到的帧解封装为数据包。
-
媒体访问控制(MAC):数据链路层负责控制共享介质上的数据帧的访问,确保不同设备之间的数据传输协调有序。
-
差错检测和重发:数据链路层实现差错检测,一旦发现数据传输错误,会请求重传数据帧。
-
数据流量控制:数据链路层控制数据的流量,避免数据的过载。
-
设备寻址:数据链路层使用MAC地址来确定设备的位置,确保数据帧传输至正确目的地。
-
局域网通信:数据链路层在局域网中实现设备之间的直接通信,负责局域网内部的数据传输。
数据链路层的设备包括网桥、交换机和网卡等。
网桥负责在数据链路层连接不同的局域网,实现局域网之间的数据转发;
交换机则是更智能化的设备,能够根据MAC地址进行数据帧的转发,提高网络性能和效率;
网卡是计算机上的物理设备,负责将计算机数据传输至网络链路,并负责接收网络链路传来的数据。这些设备协同工作,保证数据链路层的功能正常运行,实现数据在相邻节点之间的传输。
2.7 物理层
物理层是计算机网络体系结构中的最底层 ,负责传输原始比特流,并确保数据能够在通信媒介上传输。物理层的主要功能包括:
-
传输数据比特:物理层负责将数据转换为比特流,并在物理介质上传输。
-
数据编码:将数字信号编码为模拟信号,或者将模拟信号编码为数字信号,以便在传输介质上传输。
-
数据传输速率:定义数据传输的速率,包括数据传输速率、波特率等。
-
信号调制:将数字信号调制成适合传输的模拟信号,或者反之,从模拟信号中解调出数字信号。
-
传输介质管理:包括传输介质的选择、使用和管理,确保数据能够在介质上安全可靠地传输。
物理层的设备主要包括各种物理传输介质和设备,例如:
-
网线:用于有线网络的传输介质,如以太网网线(如Cat5、Cat6等)。
-
光纤:用于光纤网络的传输介质,具有高带宽和低传输损耗的优点。
-
网卡:负责将计算机中的数据转换成适合在网络传输的信号,并与物理介质连接。
-
调制解调器(Modem):用于在数字网络和模拟电话线之间进行数据的调制和解调,实现数字信号与模拟信号之间的转换。
物理层设备和技术的发展直接影响着网络的传输性能和速度。因此,在设计和维护计算机网络时,物理层的选择和管理至关重要,决定了网络的稳定性和性能表现。
三、网络应用程序通信流程

应用程序A将数据hello传给网络上另一台主机上的程序B,数据从应用层发送给传输层,传输层在数据前加上tcp协议或者udp协议的报头,将整条报文发送给网络层,网络层添加自己的ip报头,再将整条数据发送给数据链路层,数据链路层将数据分装成能在网络中独立传输的数据单元,即数据帧。封装好的数据帧通过网络传输到另一台主机,然后从下层依次拆包,将数据部分送往应用层,应用层B就得到了数据hello。