计算机网络复习
1. OSI 七层
名称 | 对应的 |
应用层 | HTTP、SMTP、FTP,Telnet 提供访问网络服务的接口 |
表示层 | ASCII、Encryption、JPG、HTML 数据信息交换使得一个主机应用层信息可被另一个主机应用程序理解 |
会话层 | SQL、NFS、ASP 建立、管理、终止进程之间的会话 |
传输层 | TCP、UDP 第一个端对端的,即主机到主机层次的数据分段传输 |
网络层 | IP 路由器,实现子网之间数据包的路由选择 |
数据链路层 | Frame,PPP,IEEE802.3物理寻址、数据分帧,流量控制,如网桥,交换机 |
物理层 | Ethernet 媒介、设备,如中继器(放大器)、集线器等 |
2. TCP和UDP区别
TCP面向连接,UDP无连接,TCP可靠,UDP不可靠,TCP由顺序编号和ACK来保证可靠性。
TCP(FTP,Telnet,SMTP简单邮件,POP3邮件)
UDP(DNS,TFTP)
3. TCP的报文结构
4. TCP的三次握手和四次挥手
三次握手
C-》S: seq=x, syn=1;
S-》C:seq=y,syn=1,ack=x+1;
C-》S:seq=x+1,ack=y+1;
这样就建立连接,开始数据传输了
四次挥手
C-》S:FIN=1,seq=u;
S-》C:seq=w,ACK=u+1;
然后S要等C close,这时处于close_wait状态
S-》C:FIN,seq=v;
C-》S:ack=v+1;
http://blog.csdn.net/fjiale/article/details/7536922TIME-Wait的作用
5. TCP的拥塞控制
http://blog.csdn.net/sicofield/article/details/9708383
6. TCP滑动窗口和后退协议
http://www.cnblogs.com/hupp/p/4857093.html
7. HTTP协议
http://www.cnblogs.com/IUNI/p/5090090.html
8. Http1.1和Http1.0的区别
区别:
1,HTTP/1.0协议使用非持久连接,即在非持久连接下,一个tcp连接只传输一个Web对象,;
2,HTTP/1.1默认使用持久连接(然而,HTTP/1.1协议的客户机和服务器可以配置成使用非持久连接)。
在持久连接下,不必为每个Web对象的传送建立一个新的连接,一个连接中可以传输多个对象!
9. Http怎么处理长连接。
http://blog.csdn.net/jiary5201314/article/details/51398155
10.
Cookie:主要用在保存客户端,其值在客户端与服务端之间传送,不安全,存储的数据量有限。
Session:保存在服务端,每一个session在服务端有一个sessionID作一个标识。存储的数据量大,安全性高。占用服务端的内存资源
Session用于保存每个用户的专用信息. 每个客户端用户访问时,服务器都为每个用户分配一个唯一的会话ID(Session ID) . 她的生存期是用户持续请求时间再加上一段时间(一般是20分钟左右).Session中的信息保存在Web服务器内容中,保存的数据量可大可小.当 Session超时或被关闭时将自动释放保存的数据信息.由于用户停止使用应用程序后它仍然在内存中保持一段时间,因此使用Session对象使保存用户数据的方法效率很低.对于小量的数据,使用Session对象保存还是一个不错的选择
Cookie 用于保存客户浏览器请求服务器页面的请求信息,程序员也可以用它存放非敏感性的用户信息,信息保存的时间可以根据需要设置.如果没有设置Cookie失效日期,它们仅保存到关闭浏览器程序为止.如果将Cookie对象的Expires属性设置为Minvalue,则表示Cookie永远不会过期.Cookie存储的数据量很受限制,大多数浏览器支持最大容量为4K,因此不要用来保存数据集及其他大量数据.由于并非所有的浏览器都支持Cookie,并且数据信息是以明文文本的形式保存在客户端的计算机中,因此最好不要保存敏感的,未加密的数据,否则会影响网站的安全性
session工作原理
(1)当有Session启动时,服务器生成一个唯一值,称为Session ID(好像是通过取进程ID的方式取得的)。
(2)然后,服务器开辟一块内存,对应于该Session ID。
(3)服务器再将该Session ID写入浏览器的cookie。
(4)服务器内有一进程,监视所有Session的活动状况,如果有Session超时或是主动关闭,服务器就释放改内存块。
(5)当浏览器连入IIS时并请求的ASP内用到Session时,IIS就读浏览器Cookie中的SessionID。
(6)然后,服务检查该Session ID所对应的内存是否有效。
(7)如果有效,就读出内存中的值。
(8)如果无效,就建立新的Session。
11.
电脑上访问一个网页,整个过程是怎么样的:DNS、HTTP、TCP、OSPF、IP、ARP。
DNS:www.baidu.com -> IP:220.181.27.48
HTTP: 会话请求,添加源和目的端口
IP:路由OSPF
ARP:MAC地址