网络的拓扑结构:总线型、星型、树型、环型、全网状、部分网状
电路交换:基于电话网的电路交换(PS:在同一电信区群中,任意两个或多个用户终端建立短暂的连接)
→优点:延迟小、透明传输
→缺点:带宽固定,网络资源利用率低,初始连接建立慢
分组交换:以分组为单位存储转发(PS:将数据以分组的方式进行传输,实现计算机与计算机之间的通信)
→优点:多路复用,网络资源利用率高
→缺点:延迟大,实时性差,设备功能复杂
衡量计算机网络的主要指标:带宽、延迟 1MB/s(字节)=8Mbps(比特)
带宽:带宽就是传输速率,是指每秒钟传输的最大字节数MB/S通常以bps为单位
例如以太网带宽为10Mbps,快速以太网为100Mbps
延迟:描述网络上数据从一个节点传送到另一个节点所经历的时间
OSI参考模型定义了网络中设备所遵守的层次结构
分层结构的优点:
→开放的标准化接口
→多厂商兼容性
→易于理解、学习和更新协议标准
→实现模块化工程,降低了开发实现的复杂度
→便于故障排除
TCP-面向连接的服务
→通信之前先建立连接,通信完成后断开连接
→有序传递
→应答确认
→差错重传
→适合于对可靠性要求高的应用
UDP-无连接的服务
→尽力而为的服务
→无需建立连接
→无序列号机制,无确认机制,无重传机制
→适合于对延迟敏感的应用
同类接口互连用交叉线,异类接口互连用直连线
多模光纤
→较粗的纤芯,传输多种不同波长不同角度的光→衰耗大,传输距离通常在千米以内
→成本低
单模光纤
→纤芯与光波长相同,传送单一波长的激光→衰耗小,传输距离可达数十千米
→成本高
局域网技术类型众多,其中以太网应用最广泛
局域网划分为LLC子层和MAC子层
CSMA/CD定义了多路访问介质中的信道抢占、冲突检测和退避算法等
快速以太网和千兆以太网大大提高了以太网速度
802.11规定的WLAN技术允许更便捷地部署局域网
广域网技术对应于OSI模型的数据链路层和物理层
广域网连接方式分为专线方式、电路交换方式和分组交换方式
tcp与udp
UDP协议(User Datagram Protocol,用户数据报协议):面向无连接的协议,不保证可靠性,但是具有较低的延迟和更快的传输速度,常用于实时音视频传输、广播和多播等场景。
TCP是面向连接的可靠的传输层协议。它支持在并不可靠的网络上实现面向连接的可靠的数据传输
UDP是无连接的传输协议,主要用于支持在较可靠的链路上的数据传输,或用于对延迟较敏感的应用
TCP三次握手
字段 | 长度 | 含义 |
Source Port | 16比特 | 源端口,标识哪个应用程序发送。 |
Destination Port | 16比特 | 目的端口,标识哪个应用程序接收。 |
Sequence Number | 32比特 | 序号字段。TCP链接中传输的数据流中每个字节都编上一个序号。序号字段的值指的是本报文段所发送的数据的第一个字节的序号。 |
Acknowledgment Number | 32比特 | 确认号,是期望收到对方的下一个报文段的数据的第1个字节的序号,即上次已成功接收到的数据字节序号加1。只有ACK标识为1,此字段有效。 |
Data Offset | 4比特 | 数据偏移,即首部长度,指出TCP报文段的数据起始处距离TCP报文段的起始处有多远,以32比特(4字节)为计算单位。最多有60字节的首部,若无选项字段,正常为20字节。 |
Reserved | 6比特 | 保留,必须填0。 |
URG | 1比特 | 紧急指针有效标识。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。 |
ACK | 1比特 | 确认序号有效标识。只有当ACK=1时确认号字段才有效。当ACK=0时,确认号无效。 |
PSH | 1比特 | 标识接收方应该尽快将这个报文段交给应用层。接收到PSH = 1的TCP报文段,应尽快的交付接收应用进程,而不再等待整个缓存都填满了后再向上交付。 |
RST | 1比特 | 重建连接标识。当RST=1时,表明TCP连接中出现严重错误(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立连接。 |
SYN | 1比特 | 同步序号标识,用来发起一个连接。SYN=1表示这是一个连接请求或连接接受请求。 |
FIN | 1比特 | 发端完成发送任务标识。用来释放一个连接。FIN=1表明此报文段的发送端的数据已经发送完毕,并要求释放连接。 |
Window | 16比特 | 窗口:TCP的流量控制,窗口起始于确认序号字段指明的值,这个值是接收端正期望接收的字节数。窗口最大为65535字节。 |
Checksum | 16比特 | 校验字段,包括TCP首部和TCP数据,是一个强制性的字段,一定是由发端计算和存储,并由收端进行验证。在计算检验和时,要在TCP报文段的前面加上12字节的伪首部。 |
Urgent Pointer | 16比特 | 紧急指针,只有当URG标志置1时紧急指针才有效。TCP的紧急方式是发送端向另一端发送紧急数据的一种方式。紧急指针指出在本报文段中紧急数据共有多少个字节(紧急数据放在本报文段数据的最前面)。 |
Options | 可变 | 选项字段。TCP协议最初只规定了一种选项,即最长报文段长度(数据字段加上TCP首部),又称为MSS。MSS告诉对方TCP“我的缓存所能接收的报文段的数据字段的最大长度是MSS个字节”。 新的RFC规定有以下几种选型:选项表结束,无操作,最大报文段长度,窗口扩大因子,时间戳。 窗口扩大因子:3字节,其中一个字节表示偏移值S。新的窗口值等于TCP首部中的窗口位数增大到(16+S),相当于把窗口值向左移动S位后获得实际的窗口大小。 时间戳:10字节,其中最主要的字段是时间戳值(4字节)和时间戳回送应答字段(4字节)。 选项确认选项: |
Padding | 可变 | 填充字段,用来补位,使整个首部长度是4字节的整数倍。 |
data | 可变 | TCP负载。 |
--TCP和UDP通过端口号标识上层应用和服务
--TCP通过三次握手建立可靠连接
--TCP通过校验和进行差错校验,通过序列号、确认和超时重传机制实现可靠传输,通过滑动窗口实现流量控制
--UDP实现简单,资源占用少,实时性强,适用于可靠性高的网络和延迟敏感的应用