计算机网络学习小结

来源:互联网 发布:人工智能用go语言开发 编辑:程序博客网 时间:2024/05/16 11:12


TCP/IP体系结构总共四层:把最上面三次统称应用层,数据链路层和物理层称网际接口层。

1. 应用层

主要协议FTPDNSHTTPWWWTELNETSMTP

应用层和传输层直接通过套接字连接,即套接字作为应用层和传输层之间的接口。

套接字的数据结构中主要有:本地IP、目的IP、本地端口、目的端口等。

2. 传输层:端到端(即进程之间,通过端口)通信。

主要协议UDPTCP

1)     上传:自动去掉首部,然后将数据部分交给上层,应用层。

当收到下层传来的包后,把首部和数据部分一起检验

2)     下传:在应用层传下来的报文前面加上UDP首部或TCP首部,这些首部主要包含有源端口、目的端口、检验和等(不含IP地址)。作为数据部分交给下一层,网络层。

3. 网络层:(主机之间)

主要协议IPARPRARPICMPOSPFIPXRIP、(路由器)

无连接、尽最大努力交付(不可靠),传送的分组可能出错、丢失、重复、失序

1)     上传:自动去掉IP头,将IP数据报的数据部分交给上一层,传输层。

当收到下层传来的IP数据报后,只检验IP数据报的首部

2)     下传:将上层传来的包后,加上IP头(主要包括源IP地址、目的IP地址等)。作为数据部分交给下一层,数据链路层。

此外,还需要根据计算目的IP地址的硬件地址(MAC地址):通过ARP协议得到MAC地址

A.     若目的主机是本网络上的另一个主机,用ARP找到目的主机的硬件地址;

B.     若目的主机是另一个网络上的,用ARP找到本网络上一个路由器的硬件地址,剩下的工作交给那个路由器完成。

4. 数据链路层:

主要协议PPPFRHDLCVLANMAC(网桥、交换机)

不可靠传输,虽然接受的帧均无差错,但无法应对帧丢失、帧重复、帧失序

1)     上传:自动去掉首部和尾部,将数据部分交给上层,网络层。

当收到下层传上来的数据帧后,会用循环冗余检验是否出错,保证无差错接受。

2)     下传:将上层传来的,加上首部(其中有目的地MAC地址,由上层ARP协议计算得到)和尾部(其中有冗余码,即添加的帧检测序列),即封装成帧,交给下一层,物理层。

5. 物理层:

传输比特流。(注意:传输用到的物理介质在物理层之下)

TCP 和 UDP

TCPTransmission ControlProtocol,传输控制协议)UDPUser Data Protocol,用户数据报协议)区别

  1. TCP是面向连接的协议,也就是,在收发数据前,必须和对方建立可靠的连接。TCP建立连接要进行3次握手,而断开连接要进行4次挥手。UDP是一个非连接的协议,传输数据之前源端和终端不建立连接
  2. TCP是字节流模式的;UDP是数据报模式的
  3.  UDP由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息
  4. TCP是可靠交付,保证数据准确性通过滑动窗口控制流量大小,通过超时重传保证可靠传输UDP使用尽最大努力交付,不保证可靠交付
  5.  TCP有拥塞控制(慢开始、拥塞避免、快重传、快恢复)UDP没有拥塞控制
  6. TCP对系统资源要求较多,UDP较少



慢开始由小到大增大拥塞窗口(指数增大)。(遇到拥塞或者达到设置的慢开始门限值停止

拥塞避免让拥塞窗口缓慢增大,每次增加1

无论是在慢开始还是拥塞避免阶段,只要网络出现了拥塞,就将慢开始门限值设置为拥塞时的一半。同时把拥塞窗口设置为1,同时执行慢开始算法开始增长。(PS:慢开始门限用于慢开始增长的上限,当慢开始增长达到门限时,就开始拥塞避免的算法增长)

快重传发送方只要一连收到三个重复确认,应当立即重传对方尚未尚未收到的报文段

快恢复遇到拥塞后,并不把拥塞窗口设置为1,而是设置与减半后的慢开始门限值一样,并且此时执行拥塞避免算法开始增长

万维网

用 URL(统一资源定位符)来标识万维网上的各种文档

用 HTTP(超文本传输协议)来实现万维网上各种链接HTTP协议是无状态的);

用 HTML(超文本标记语言)将不同风格的万维网文档都能在主机屏幕显示出来


使用 HTTP 的 URL:

http://<主机>:<端口>/<路径>

HTTP的默认端口号是80,通常可以省略。如果省略路径,就指到某个主页。


在浏览器中访问一个链接的过程:比如是http://www.tsinghua.edu.cn/chn/yxsz/index.htm

A.    浏览器分析链接指向页面的URL。

B.     浏览器向DNS请求解析www.tsinghua.edu.cn的IP地址。

C.     域名系统DNS解析出清华大学服务器的IP地址为116.111.4.100。

D.    浏览器与服务器建立TCP连接。

E.     浏览器发出取文件命令:GET /chn/yxsz/index.htm。

F.     服务器www.tsinghua.edu.cn给出响应,把文件index.htm发送给浏览器。

G.    释放TCP连接。

H.    浏览器显示那个页面。

 

0 0
原创粉丝点击