计算机网络和因特网
计算机科学领域的任何问题都可以增加一个间接的中间层来解决 ==> 分层
主机间的通信问题
各层的功能和协议+层与层间连接通信接口
why ==> how ==> what
- 遇到什么问题
- 如何解决
- RFC文档
target:
- 在浏览器输入一个 URL,到网页显示出来,中间发生了什么?数据包是如何在网络世界传输的?
- 《TCP/IP详解卷一》
- 《Wireshark网络分析就这么简单》
- cs144 labs
协议定义了在两个或多个通信实体之间交换的报文的格式和顺序,以及报文的发送/接收或其它事件所采取的操作。
因特网的描述方式:
- 根据硬件和软件组件来描述
- 根据基础设施向分布式应用提供的服务来描述
主机(端系统)通过通信链路和分组交换机的网络连接到一起。主机通过因特网服务提供商(ISP)接入因特网,每个 ISP 自身就是一个由多台分组交换机和多段通信链路组成的网络,各 ISP 为主机提供了各种不同类型的网络接入。较低层次的 ISP 和较高层次的 ISP 互联,较高层次的 ISP 彼此互联。每个 ISP 网络都是独立管理的,运行着 IP 协议,遵从一定的命名和地址规则。
分组交换机:多数分组交换机在链路的输入端使用存储转发传输机制,指在交换机开始向输出链路传输该分组的第一个比特之前,必须接收到整个分组。
- 路由器:通常用于网络核心中
- 链路层交换机:通常用于接入网中
分层:
- 应用层:网络应用程序及它们的应用层协议存留的地方。报文。HTTP、SMTP、FTP
- 运输层:在应用程序端点之间传送应用层报文。报文段。TCP、UDP
- 网络层:负责将称为数据报的网络层分组从一台主机移动到另一台主机。IP
- 链路层:将整个帧从一个网络元素移动到邻近的网络元素。
- 物理层:将该帧中的一个个比特从一个节点移动到下一个节点。
工具
Traceroute
traceroute
命令是一个网络诊断工具,允许用户跟踪一个数据包从源计算机到目的地的路线。
工作原理:向目的地发送具有逐渐增加的生存时间(TTL)值的数据包。每当一个数据包到达路由器时,路由器将 TTL 值递减 1,如果 TTL 值为零,则丢弃该数据包。traceroute
命令监听路由器发回的错误信息,并记录每个处理数据包的路由器的 IP 地址。
traceroute [options] destination
路由器编号 路由器名字 路由器地址 三次实验的往返时延
Wireshark
分组嗅探器:用来观察执行协议的实体之间交换的报文的基本工具。一个分组嗅探器被动地拷贝由你的计算机发送和接受的报文,它也能显示出这些被捕获报文的各个协议字段的内容。