Summary
- 模型:Bidirectional byte stream
- 模型的三种应用:
- World Wide Web(HTTP)
- Skype
- BitTorrent
1. Bidirectional byte stream
The most common communication model of networked applications.
This allows two programs running on different computers exchange data.
将网络抽象A和B之间双向的读/写
2-1 World Wide Web
client-server model 客户端-服务端
Client open connection to a server and requests documents.
Server responses documents.
2-2 BitTorrent
peer-to-peer model
Swarms of clients open connections to each other to exchange pieces of data.
A single client can request from many other clients in parallel.
每个客户端拥有文件的 piece 即一部分,这些客户端形成了swarms 即集群,客户端可以选择加入或退出这个 swarm
客户端要load file时,向Tracker请求拥有piece的client lists客户列表,从各客户端load piece,且是个并发的过程
2-3 Skype
Clients can`t open connections directly, so go through Rendezvous or Relay server.
NAT:Network Address Translator
个人理解:NAT是个单向的过程,所以需要 reverse connection
正常情况下,A try to open connection to B,但是由于B在NAT后面,B无法通过NAT回发信息给A,实际上是B open connection to A
通常,public server 不会在NAT后面,但是 personal machine 为了安全,所以需要NAT
补充知识
互联网包含因特网,因特网包含万维网
1. 互联网
凡是能彼此通信的设备组成的网络就叫互联网
2. Internet 因特网
基于TCP/IP协议让不同的设备可以彼此通信。但使用TCP/IP协议的网络并不一定是因特网,一个局域网也可以使用TCP/IP协议。
TCP/IP协议由很多协议组成,不同类型的协议又被放在不同的层,其中,位于应用层的协议就有很多,比如FTP、SMTP、HTTP。只要应用层使用的是HTTP协议,就称为万维网。
Internet 提供的主要服务有万维网(WWW)、文件传输(FTP)、电子邮件(E-mail)、远程登录(Telnet)、手机 (3GHZ) 等。
3. www万维网
浏览器通过超文本传输协议(HTTP),将Web服务器上站点的网页代码HTML提取出来,并翻译成网页。
URL (Uniform Resource Locator,统一资源定位符):http://www.microsoft.com/china/index.htm
- http://:超文本传输协议,通常不用输入
- www:一个万维网服务器
- Microsoft.com/:站点服务器的名称
- China/:该服务器上的子目录
- Index.htm:该子目录下的一个HTML文件,HTML语言描述的文件,需要通过www浏览器显示效果
PS:万维网与因特网的差别,因特网指的是一个硬件的网络,全球的所有电脑通过网络连接后便形成了因特网,而万维网更倾向于一种浏览网页的功能。