计算机网络
文章平均质量分 52
wxy941011
这个作者很懒,什么都没留下…
展开
-
HTTP报文
请求报文的格式: 1请求行,包含方法,一个请求URL,HTTP版本 2首部 3内容主体响应报文的格式 1起始行也叫响应行,包含啊http版本,数字状态码,原因短语2首部3内容主体1.所有报文都是往下游流动,响应报文也是往下流1、常用的HTTP方法有哪些?GET: 用于请求访问已经被URI(统一资源标识符)识别的资源,可以通过URL传参给服务器。POST:用于传输信息给服务器,主要功能与GET...原创 2018-03-23 17:01:36 · 357 阅读 · 0 评论 -
TCP协议对于流量控制和拥塞控制
1.HTTP事务时延的原因1:DNS解析系统将URL中的主机名转换成一个IP地址要花费数十秒时间2:每条新的TCP连接都会有连接建立时延,同时又数百个http事务的话,这个值快速叠加上去。3:web服务器读取请求报文并进行处理,因特网传输请求报文都需要时间。4:web服务器会送http响应也要花费时间2.TCP连接握手时延因为要进行三次握手连接,四次握手断开连接,所以耗时很久3.延迟确认每个TCP...原创 2018-03-23 17:28:55 · 1055 阅读 · 0 评论 -
IO模型详解
一、BIO类型 1)同步阻塞IO(JAVA BIO): 同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。 网络编程的基本模型是C/S模型,即两个进程间的通信。服务端提供IP和监听端口,客户端通过连接操作向服务端监听的地址发起连接请求,通过三...原创 2018-05-10 22:13:57 · 217 阅读 · 0 评论 -
TCP粘包,拆包及解决方法
在进行Java NIO学习时,发现,如果客户端连续不断的向服务端发送数据包时,服务端接收的数据会出现两个数据包粘在一起的情况,这就是TCP协议中经常会遇到的粘包以及拆包的问题。我们都知道TCP属于传输层的协议,传输层除了有TCP协议外还有UDP协议。那么UDP是否会发生粘包或拆包的现象呢?答案是不会。UDP是基于报文发送的,从UDP的帧结构可以看出,在UDP首部采用了16bit来指示UDP数据报文...原创 2018-05-24 00:19:44 · 28500 阅读 · 7 评论 -
TCP连接的TIMEWAIT问题
TIMEWAIT是友好的 TCP要保证在所有可能的情况下使得所有的数据都能够被正确送达。当你关闭一个socket时,主动关闭一端的socket将进入TIME_WAIT状态,而被动关闭一方则转入CLOSED状态,这的确能够保证所有的数据都被传输。当一个socket关闭的时候,是通过两端四次握手完成的,当一端调用close()时,就说明本端没有数据要发送了。这好似看来在握手完成以后,socket...原创 2018-05-24 00:21:00 · 410 阅读 · 0 评论 -
http1.1和1.0的区别
1.带宽优化及网络连接的使用,HTTP1.0中,存在一些浪费带宽的现象,例如客户端只是需要某个对象的一部分,而服务器却将整个对象送过来了,并且不支持断点续传功能,HTTP1.1则在请求头引入了range头域,它允许只请求资源的某个部分,即返回码是206(Partial Content),这样就方便了开发者自由的选择以便于充分利用带宽和连接。2.长连接,HTTP 1.1支持长连接(Persisten...原创 2018-07-02 00:32:46 · 674 阅读 · 0 评论 -
DNS查找过程
递归查询: 主机向本地域名服务器的查询一般都是采用递归查询。 如果主机所询问的本地域名服务器不知道被查询的域名的IP地址,那么本地域名服务器就以DNS客户的身份,向其根域名服务器继续发出查询请求报文(即替主机继续查询),而不是让主机自己进行下一步查询。因此,递归查询返回的查询结果是所要查询的IP地址,或者是返回一个失败的响应,表示无法查询到所需的IP地址。迭代查询: ...原创 2018-06-27 00:24:47 · 3136 阅读 · 0 评论 -
在浏览器中输入网址后执行的全部过程
1、浏览器根据域名(主机名)通过DNS服务器查询域名对应的服务器的IP地址2、浏览器主机根据IP地址与服务器建立TCP连接。3、浏览器将访问请求封装为一个HTTP请求报文,通过TCP协议发送给服务器。4、服务器收到请求并响应,生成一个HTTP响应报文,通过TCP协议发送给浏览器主机。5、浏览器得到响应报文之后,对响应报文进行解析。6、浏览器异步请求其他资源...转载 2018-06-29 00:25:43 · 2530 阅读 · 0 评论 -
HTTPS的工作流程
1.客户端发送请求到服务器端2.服务器端返回证书和公开密钥,公开密钥作为证书的一部分而存在3.客户端验证证书和公开密钥的有效性,如果有效,则生成共享密钥并使用公开密钥加密发送到服务器端4.服务器端使用私有密钥解密数据,并使用收到的共享密钥加密数据,发送到客户端5.客户端使用共享密钥解密数据...原创 2018-06-29 00:31:18 · 611 阅读 · 0 评论