CrashCourseComputerScience29互联网

107 阅读2分钟

互联网

网络从 LAN(local area network) 连接到 WAN(wide area network) ,WAN 的路由器一般属于互联网服务提供商(ISP, Internet Service Provider)。互联网是由 ISP 互联而成的网络,这些设备会再分层,互联网主干由一群超大型、带宽超高路由器组成。
通过 traceroute 命令能看到 packet 数据经过哪些路由器,以及经过每个路由器的时间。

数据包 packet 在互联网上传输要符合互联网标准协议,简称 IP,Internet Protocol。
IP 数据包的头部只有目标地址,没有具体的应用信息,在此之上使用其他协议,例如用户数据报协议 UDP User Datagram Protocol,UDP 会在前面继续增加自己的头部信息,包括端口号和校验和(用于检查数据的完整性)。UDP 适合视频连接等不需要保证数据完整性的场景。
在精确控制数据传输的场景下,使用传输控制协议 TCP Transmission Control Protocol,TCP 会在 IP 数据包的头部增加端口号,以及序号和确认号,用于保证数据的完整性。TCP 还有拥塞控制和流量控制的功能。
IP 和 PORT 是传输的基础,但用户需要的是对这个信息的映射域名,这就需要 DNS, Domain Name System 来完成映射的解析,将用户输入的域名转换为协议需要的 IP + PORT。
计算机的网络需要各个部分协同配合,为了管理硬件、软件、应用等不同参与方的协作,将网络进行了分层,最常见的是 OSI, Open Systems Interconnection,开放系统互联。

  • PHYSICAL LAYER 物理层,电信号的传递解析
  • DATA LINK LAYER 数据链路层,负责操作物理层,做 MAC 控制、碰撞检测、指数退避等工作
  • NETWORK LAYER 网络层,负责各种报文交换和路由
  • TRANSPORT LAYER 传输层,负责计算机之间进行点到点传输
  • SESSION LAYER 会话层,管理传输层协议的连接、信息传递和连接关闭
  • PRESENTATION LAYER 表示层
  • APPLICATION LAYER 应用层