网络
xuzhangze
这个作者很懒,什么都没留下…
展开
-
多线程TCP服务器的简单
以下为多线程TCP服务器端与客户端进行简单数据传输的实现: 服务器端:server.c#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/types.h>#include <sys/socket.h>#include <unis...原创 2018-05-27 12:44:10 · 1295 阅读 · 0 评论 -
网络基础大致框架
一、网络发展——从单机模式到网络互连模式 1、单机模式(独立模式):计算机之间相互独立 2、网络互联:多台计算机连接在一起,完成数据共享。 3、局域网(LAN):计算机数量更多,通过交换机和路由器连接在一起。 4、广域网(WAN):将距离很远的计算机连在一起。 二、网络协议 协议:某种大家都遵循的“约定”。 1、协议分层的优点 (1)各层之间相互独立。 ...原创 2018-06-22 21:19:42 · 10819 阅读 · 0 评论 -
TCP性能提高措施
1、滑动窗口 在确认应答机制中,接收方每接收到一个数据段,都要给发送方发送一个ACK应答报文,发送方在接收到应答报文后才继续发送下一个报文段,这样可保证数据传送的可靠性。但是这样做性能较差,尤其在数据往返时间较长的时候。 TCP中引入了滑动窗口机制,只要数据处于这个滑动窗口中,就可以在上一个数据段未收到确认时依然将后面的数据发送出去。这样就可以一次发送多条数据,就大大的提高了性能(其实是将多个...原创 2018-05-30 20:20:03 · 3660 阅读 · 0 评论 -
TCP可靠性的保证机制总结
TCP保证可靠性主要依靠下面7种机制: 1、检验和 TCP检验和的计算与UDP一样,在计算时要加上12byte的伪首部,检验范围包括TCP首部及数据部分,但是UDP的检验和字段为可选的,而TCP中是必须有的。计算方法为:在发送方将整个报文段分为多个16位的段,然后将所有段进行反码相加,将结果存放在检验和字段中,接收方用相同的方法进行计算,如最终结果为检验字段所有位是全1则正确(UDP中为0是正...原创 2018-05-28 23:33:44 · 31210 阅读 · 3 评论 -
TCP概略
一、TCP报头结构 源端口与目的端口:各占2byte,标识源进程与目标进程。 序号:占4byte,TCP连接传送的字节流中每一个字节都按顺序编号,整个要传送的字节流的起始序号必须在创建连接时设置。这里的序号指本报文段所发送的数据的第一个字节的序号。 确认序号:占4byte,期望收到对方下一个报文段的第一个数据字节的编号。代表确认序号之前的数据都已经收到。 数据偏移:占4bit,实际上是...原创 2018-05-28 20:40:11 · 333 阅读 · 0 评论 -
UDP服务器的简单实现
服务器端:#include <stdio.h>#include <stdlib.h>#include <sys/socket.h>#include <arpa/inet.h>#include <string.h>#include <sys/types.h>#define ERR_EXIT(m) \ ...原创 2018-05-23 13:12:10 · 1154 阅读 · 0 评论 -
UDP总结
一、UDP首部 端口号:用于标识收发进程。 UDP长度:包括UDP头部字节长度和UDP数据字节长度。最小为8字节,最大为64k,超过64k则分包多次发送。单位为字节。 UDP检验和:UDP检验和是可选的,当不用校验和时用0填充。二、UDP传输特点: a、无连接:知道对端的IP和端口号就直接进行传输,不需要建立连接;减少了开销和发送数据之前的时延。 b、不可靠:UDP使用尽最大努力...原创 2018-05-23 12:59:42 · 1052 阅读 · 0 评论 -
http服务器的简单实现
server.c:#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/types.h>#include <sys/socket.h>#include <unistd.h>#include <netinet/in.h...原创 2018-05-27 12:53:19 · 328 阅读 · 0 评论 -
多进程TCP服务器的简单实现
服务器端: server.c:#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/types.h>#include <sys/socket.h>#include <unistd.h>#include <netin...原创 2018-05-27 12:47:35 · 495 阅读 · 0 评论 -
HTTP协议状态码部分整理
前段时间面试被问到HTTP协议的状态码,结果有一个没有回答上来,现在整理一下,虽然不一定能在后面的面试中能完整的说出来,但至少得保证能记得重点。 HTTP协议状态码在HTTP响应报文中出现,其职责是当客户端向服务器端发送请求时,描述返回的请求结果。用户可以借助状态码知道服务器是正常处理了客户端的请求还是出现了错误。 HTTP常见的状态码如下(HTTP状态码有很多,这里只列出常见的状态码): ...原创 2018-08-21 10:31:35 · 387 阅读 · 0 评论