计算机网络学习笔记
Posted Hot Autumn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机网络学习笔记相关的知识,希望对你有一定的参考价值。
TCP/IP体系结构总共四层:把最上面三次统称应用层,数据链路层和物理层称网际接口层。
1. 应用层
主要协议:FTP、DNS、HTTP、WWW、TELNET、SMTP等
应用层和传输层直接通过套接字连接,即套接字作为应用层和传输层之间的接口。
套接字的数据结构中主要有:本地IP、目的IP、本地端口、目的端口等。
2. 传输层:端到端(即进程之间,通过端口)通信。
主要协议:UDP和TCP
1) 上传:自动去掉首部,然后将数据部分交给上层,应用层。
当收到下层传来的包后,把首部和数据部分一起检验。
2) 下传:在应用层传下来的报文前面加上UDP首部或TCP首部,这些首部主要包含有源端口、目的端口、检验和等(不含IP地址)。作为数据部分交给下一层,网络层。
3) PS:如果UDP想要达到TCP的可靠性传输,因为UDP是不具有拥塞控制的功能的,故而对传输层以下的层做工作是徒劳的,可以通过修改会话层,从而让UDP也能可靠性传输.
3. 网络层:(主机之间)
主要协议:IP、ARP、RARP、ICMP、OSPF、IPX、RIP、(路由器)
无连接、尽最大努力交付(不可靠),传送的分组可能出错、丢失、重复、失序
1) 上传:自动去掉IP头,将IP数据报的数据部分交给上一层,传输层。
当收到下层传来的IP数据报后,只检验IP数据报的首部。
2) 下传:将上层传来的包后,加上IP头(主要包括源IP地址、目的IP地址等)。作为数据部分交给下一层,数据链路层。
此外,还需要根据计算目的IP地址的硬件地址(MAC地址):通过ARP协议得到MAC地址:
A. 若目的主机是本网络上的另一个主机,用ARP找到目的主机的硬件地址;
B. 若目的主机是另一个网络上的,用ARP找到本网络上一个路由器的硬件地址,剩下的工作交给那个路由器完成。
4. 数据链路层:
主要协议:PPP、FR、HDLC、VLAN、MAC(网桥、交换机)
不可靠传输,虽然接受的帧均无差错,但无法应对“帧丢失、帧重复、帧失序”
1) 上传:自动去掉首部和尾部,将数据部分交给上层,网络层。
当收到下层传上来的数据帧后,会用循环冗余检验是否出错,保证无差错接受。
2) 下传:将上层传来的,加上首部(其中有目的地MAC地址,由上层ARP协议计算得到)和尾部(其中有冗余码,即添加的帧检测序列),即封装成帧,交给下一层,物理层。
5. 物理层:
传输比特流。(注意:传输用到的物理介质在物理层之下)
TCP 和 UDP
TCP(Transmission ControlProtocol,传输控制协议)、UDP(User Data Protocol,用户数据报协议)区别:
- TCP是面向连接的协议,也就是,在收发数据前,必须和对方建立可靠的连接。TCP建立连接要进行3次握手,而断开连接要进行4次挥手。UDP是一个非连接的协议,传输数据之前源端和终端不建立连接。
- TCP是字节流模式的;UDP是数据报模式的。
- UDP由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。
- TCP是可靠交付,保证数据准确性,通过滑动窗口控制流量大小,通过超时重传保证可靠传输;UDP使用尽最大努力交付,不保证可靠交付。
- TCP有拥塞控制(慢开始、拥塞避免、快重传、快恢复);UDP没有拥塞控制。
- 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. 浏览器显示那个页面。
域名解析 DNS
(1)域名服务器:完成域名地址到IP地址转化的计算机。
(2)域名服务器上运行着一个数据库系统;
(3)数据库中保存着域名地址与IP地址。
(4)用户主机需要把域名地址转化为IP地址时向域名服务器提出查询请求;
(5)域名服务器根据用户请求进行查询并把结果返回给用户主机。
一个域名某一时刻只能对应1个IP;
一个IP可以对应多个域名;
以上是关于计算机网络学习笔记的主要内容,如果未能解决你的问题,请参考以下文章
【网络协议笔记】第四层:传输层(Transport)TCP协议简介(1)
计算机网络湖科大微课堂笔记 p54-57 IPv4数据报的首部格式网际控制报文协议ICMP虚拟专用网VPN与网络地址转换NAT