![](https://csdnimg.cn/release/download_crawler_static/86276676/bg1.jpg)
计算机网络总结笔记(上)
这篇日志将按照名教材《计算机网络——自顶向下方法和 Internet 特色》第四版总结。因为原
书是英文版,这个总结可能写的很慢。还是先开预留位。同时我会试着用尽量简单调理的少量语
言总结完。最后将给出总结中的中英文对照表。
因为内容难以预料到地多,本文将分成两部分,并用额外日志增加题解和部分实验数据。
总结笔记(上)将包括概述,应用层和运输层内容。
A.概述
1.1 概述
首先我们把一组独立互联的计算机称作计算机网络。而 Internet 与之不同。下面通过两种描述
手段阐述 Internet 的概念。
从具体构成的角度来看,Internet 互联了众多称作主机或者终端系统的设备,他们被认为位于
网络边缘,主机又可分为客户机和服务器。这些设备通过通信链路(也就是物理线缆)连接,链
路中间还有分组交换机。主机之间交换数据时将数据分组发送,并通过分组交换机分配包数据。
常见的分组交换机有路由器和链路层交换机。主机通过 ISP(Internet 服务提供商)接入
Internet 。所有 Internet 通讯必须遵循一定的协议。其规范称作互联网标准。
服务角度来说,Internet 是提供这么一些服务的计算机网络:允许离散的应用在终端上交换数
据,比如下载软件和浏览器等等。他还为这些应用提供两种服务:面向连接的服务以及无连接的
无依赖性服务。简单地说,面向连接的服务有握手程序,还必须确认包是否正确发送和接受,但
是无连接服务不需要担心另一方的问题,只要发或者接就行了。
1.2 网络核心
我们知道通过链路和交换机可以让主机之间交换信息。其两种基本方法是电路交换和分组交换。
前者的应用主要是电话系统。下面简单分析两种交换信息的方法:
电路交换:每个主机都直接与一个交换机直接相连,各个交换机之间有物理线缆,如果两台主机
要传送信息,其对应的交换机之间必须有一条预留电路。假定每个交换机都有 n 条电路,那么
连接期间该连接获得链路带宽的 1/n。(想象一下电话系统就明白了)
分组交换:各种应用在完成任务时要交换报文,,报文包含协议要求的内容。主机会把较大的报
文分组并发送到分组交换机。交换机使用存储转发传输机制,简单地说就是接受一个报文的全部
分组后才输出,这样就会产生存储转发时延,同时,对于每个输出链路,分组交换机还为之生成
一个输出缓存或输出队列,因为同一时刻只能向一条链路输出一组信息,其他信息只能在队列中
等待,这样会产生排队时延。如果队列已满,新到达的报文分组无法入队,就会产生丢包。此外
还有节点处理时延,传播时延等,总称节点总时延。
1.3 协议层次:网络中引入协议栈概念,自顶向下分别是:应用、运输、网络、链路、物理层。
对应的主要协议是 HTTP&SMTP, UDP&TCP, IP, PPP, ...等。
-----------B.应用层------------
首先我们要从一个 web 应用开始研究网络协议。一个进程进行通讯时,必须将报文发送到套接
字(socket),这一过程发生在应用层中,套接字把报文送到操作系统控制的运输层,并通过