本文共 4720 字,大约阅读时间需要 15 分钟。
最近这两星期抽空来看看计算机网络相关的知识,虽然大三上学期有学这门课,但是很快就忘了,记忆不是很深,现在再重温一下。
IP数据报:
IP地址:
IP 地址就是给每个连接在互联网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识符,用来定位网络中的计算机和网络设备; IP 地址用 32 位二进制来表示, 也就是32 比特, 换算成字节, 就 是 4 个字节。例如一个采用二进制形式的 IP 地址是10101100 00010000 00011110 00111000 , 这么长的地址, 处理起来太费劲。于是这些位被分割为4 个部分, 每一部分8位二进制, 中间使用符号 .分开 ,上面的 IP 地址可以表示为172.16.30.56。子网掩码
子网掩码 ( Subnet Mask) 又叫网络掩码、地址掩码,它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网以及哪些位标识的是主机的位掩码。子网掩码只有一个作用,就是将某个IP 地址划分成网络地址和主机地址两部分。 例如: 计算机的 IP 地址是 131.107.41.6, 子网掩码是 255.255.0.0, 计算机所在网段是131.107.0.0。该计算机和远程计算机通信 ,目标 IP 地址只要前面两部分是 131.107就认为和 该计算机在同一个网段;IP地址分类:
CIDR(无分类域间路由选择):
无分类域间路由选择CIDR是解决目前IP地址紧缺的一个好办法。CIDR记法把IP地址后面加上斜线“/”,然后写上前缀所所占的位数。前缀(或网络前缀用来指明网络),前缀后面的部分是后缀,用来指明主机。CIDR把前缀都相同的连续的IP地址组成一个“CIDR地址块”,IP地址分配都以CIDR地址块为单位。子网划分:
子网划分就是将一个网段等分成多个网段,也就是等分成多个子网。 需要: 确定子网掩码的长度; 确定子网中第一个可用的IP地址和最后一个可用的IP地址;网络层的四个主要的协议:
网络层是为主机之间提供逻辑通信,而运输层为应用进程之间提供端到端的逻辑通信。
ARQ协议
停止等待协议是为了实现可靠传输的,它的基本原理就是每发完一个分组就停止发送,等待对方确认。在收到确认后再发下一个分组。TCP 滑动窗口
发送窗口里面的序号表示允许发送的序号。发送窗口后沿的后面部分表示已发送且已收到确认,而发送窗口前沿的前面部分表示不晕与发送。发送窗口后沿的变化情况有两种可能,即不动(没有收到新的确认)和前移(收到了新的确认)。发送窗口的前沿通常是不断向前移动的。一般来说,我们总是希望数据传输更快一些。但如果发送方把数据发送的过快,接收方就可能来不及接收,这就会造成数据的丢失。TCP 流量控制
所谓流量控制就是让发送发送速率不要过快,让接收方来得及接收。利用滑动窗口机制就可以实施流量控制。 接收方发送的确认报文中的窗口字段可以用来控制发送方窗口大小,从而影响发送方的发送速率。将窗口字段设置为 0,则发送方不能发送数据。TCP 拥塞控制
在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏。这种情况就叫拥塞。 TCP的拥塞控制采用了四种算法,即 慢开始 、 拥塞避免 、快重传 和 快恢复DNS 是一个分布式数据库,提供了主机名和 IP 地址之间相互转换的服务。这里的分布式数据库是指,每个站点只保留它自己的那部分数据。
DNS 可以使用 UDP 或者 TCP 进行传输,使用的端口号都为 53。大多数情况下 DNS 使用 UDP 进行传输,这就要求域名解析器和域名服务器都必须自己处理超时和重传从而保证可靠性。在下面两种情况下会使用 TCP 进行传输:FTP是基于客户/服务器(C/S) 的协议。
用户通过一个客户机程序连接至在远程计算机上运行的服务器程序。依照 FTP 协议提供服务,进行文件传送的计算机就是 FTP 服务器。连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端。
FTP 使用 TCP 进行连接,它需要两个连接来传送一个文件:
控制连接:服务器打开端口号 21 等待客户端的连接,客户端主动建立连接后,使用这个连接将客户端的命令传送给服务器,并传回服务器的应答。
数据连接:用来传送一个文件数据。 3. 电子邮件: 电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可随时上网到自己使用的邮件服务器读取,相当于电子邮箱。一个电子邮件系统有三个重要组成构件:用户代理、邮件服务器、邮件协议(包括邮件发送协议,如SMTP,和邮件读取协议,如POP3和IMAP)。用户代理和邮件服务器都要运行这些协议。
邮件协议包含发送协议和读取协议,发送协议常用 SMTP,读取协议常用 POP3 和 IMAP。
在HTTP/1.0中默认使用短连接。也就是说,客户端和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。当客户端浏览器访问的某个HTML或其他类型的Web页中包含有其他的Web资源(如JavaScript文件、图像文件、CSS文件等),每遇到这样一个Web资源,浏览器就会重新建立一个HTTP会话。
而从HTTP/1.1起,默认使用长连接,用以保持连接特性。使用长连接的HTTP协议,会在响应头加入这行代码:
Connection:keep-alive
在使用长连接的情况下,当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,客户端再次访问这个服务器时,会继续使用这一条已经建立的连接。Keep-Alive不会永久保持连接,它有一个保持时间,可以在不同的服务器软件(如Apache)中设定这个时间。实现长连接需要客户端和服务端都支持长连接。HTTP协议的长连接和短连接,实质上是TCP协议的长连接和短连接。
在实习的课余时间,花了两周时间总算看完了计算机网络,深有体会,回头还得多看看,免得遗忘,推荐几个大佬的博客,总结的很详细,复习可参考:
转载地址:http://wrrwi.baihongyu.com/