计算机网络
文章平均质量分 67
persistence_s
这个作者很懒,什么都没留下…
展开
-
NAT技术与代理服务器
什么是NAT技术: NAT(Network Address Translation,网络地址转换)是1994年提出的。当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法。 这种方法需要在专用网连接到因特网的路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全原创 2017-07-11 16:18:32 · 697 阅读 · 0 评论 -
基于UDP的网络群聊系统
因此我们首先需要编写server端、client端 畅聊系统主要采用UDP协议因此他不要进行listen和accept 但是我们的server端依旧需要绑定ip和端口号 首先我们的server服务器使用生产者消费者模型,生产者要从网络中拿取数据,拿到的数据要放入数据池中,消费者要从数据池中取数据通过过类似广播的形式发送给每一个client端。原创 2017-08-28 01:44:35 · 561 阅读 · 1 评论 -
TCP为什么要进行三次握手四次挥手
先看一下三次握手的过程: 为什么要进行三次握手而不是两次握手呢? 假设是两次握手的情况下:A向B发了一个第一个请求连接报文,此时又于选择了一条较长的路径导致这个请求,传输的时间较长,以致延误到连接释放以后的某个时间才到达server,但是此时A认为发了一个请求连接的报文B没有收到,因此A进行重传,此时这个新的请求连接报文B很快就收到了,于是B向A发送确认报文段,同意连接,于是A和B开始互发数原创 2017-07-25 19:01:00 · 725 阅读 · 0 评论 -
socket套接字编写多线程多进程的server和client
关于套接字编程 套接字编程 IP地址+端口号就成为套接字 在TCP协议中。建立两个连接的进程个字有一个socket来标识,那么这两个socket组成desocketpair就表示一个唯一链接 socket用来描述网络连接一对一关系 socket地址的数据类型及相关函数 第一个是通用接口 第二个表示IPV4的地址使用socketaddr_in 第三个表示预间套接字 这样我们只需要原创 2017-07-25 12:51:30 · 1003 阅读 · 0 评论 -
I/O多路转接之select服务器
select 服务器 发生了改变就是读事件写事件就绪 文件描述符通常关心读事件、写事件、异常事件 也可以关心至少一个或者有多个事件 select是系统调用接口 只负责等,一次等多个文件描述符就绪之后select就会返回通知上层int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct t原创 2017-08-02 09:24:48 · 338 阅读 · 0 评论 -
I/O多路转接之poll
相较于select模型 1、poll模型已经没有了文件描述的限制,理论上可以无限大 2、poll模型的输入输出型参数不再是同一个,它的输入输出参数分离,并且不需要更新poll模型的优点:解决了select的两个缺点,它比多线程多进程占用的资源少,性能好 缺点:但是在poll一次监视的文件描述的个数过多时,它有可能来不及处理,它在后期也需要遍历,性能会随着用户的增多而性能下降include<st原创 2017-08-02 09:42:48 · 238 阅读 · 0 评论 -
浅谈ARP协议
OSI模型中ARP协议属于链路层;而在TCP/IP模型中,ARP协议属于网络层。 在这里只谈TCP/IP模型 ARP协议是一种地址解析协议,在实际应用中 ,我们经常会遇到这样的问题,已经知道啦一个主机的IP地址,需要找出与之相应的物理地址,或者反过来已经知道了物理地址需要找出相应的IP地址。地址解析协议ARP和逆地址解析协议就是用来解决这样的问题的。 IP地址是表示网络中不同主机的地址,原创 2017-07-09 16:05:57 · 566 阅读 · 0 评论 -
URG和PSH
URG: 急指针是一个正的偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序号。T C P的紧急方式是发送端向另一端发送紧急数据的一种方式。紧急指针指向包内数据段的某个字节(数据从第一字节到指针所指字节就是紧急数据,不进入接收缓冲就直接交给上层进程,余下的数据要进入接收缓冲的)值得注意的是即使窗口为0时也可以发送紧急数据,紧急数据不进入接收缓冲区直接交给上层进程。 PSH:当两个应用进程进行原创 2017-07-20 23:24:21 · 392 阅读 · 0 评论 -
tcp定时器
我们都知道,TCP发送的报文段是要交给IP层传送的,但IP层只能提供尽最大努力服务。也就是说TCP下面的网络所提供的是不可靠传输。因此TCP必须采取适当的策略。而定时器就发挥作用。 TCP管理的4个不同的定时器:1.重传定时器:用于当希望收到另一端的确认。2.坚持定时器:使窗口大小信息保持不断流动。3.保活定时器:检测TCP空闲连接的另一端何时崩溃或重启。4.2MSL定时器:测量一个连接处于TIM原创 2017-07-16 14:22:22 · 330 阅读 · 0 评论 -
端口分类
一、端口 通俗地讲,端口(Port)就是电脑向网络开放的信息出入“门户”。和小区大门不同的是,在电脑上这种“门户”有个256×256(65535)个,而且它们还有多种状态。1.端口的分类 根据端口和服务的绑定情况,端口可分为公认端口、注册端口和动态端口。 公认端口:0~1023。这个范围内的端口系统一般保留给一些常用的系统服务,比如WEB服务使用80端口,FTP服务使用21端口原创 2017-07-16 13:59:28 · 4191 阅读 · 0 评论 -
路由生产算法调研
路由算法是路由选择协议的核心。路由算法指明了计算机网络中的结点机(或路由器)在接收到一个分组之后,应该选择哪条输出链路的策略。当采用虚电路通信时,路由是在建立呼叫链接是确立的,即一次性选择路由,后继的分组均沿着这条既定的路由传送。当采用数据报通信时,路由器要为每个分组做出路由选择。因此通信子网采用不同的通信方式,路由算法的使用额度是不一样的。 一个实际的路由算法不可能做到尽善尽美,只能比较接近理想原创 2017-07-12 16:28:06 · 396 阅读 · 0 评论 -
I/O多路转接之epoll模型
epoll是性能最好的没有之一 epoll有三个系统调用函数 epoll_create 创建文件描述符、来标识epoll模型 epoll_ctl epoll_wait #include<stdio.h>#include <sys/epoll.h>#include <sys/types.h>#include <sys/socket.h>#include <sys/time.h>原创 2017-08-02 10:21:12 · 372 阅读 · 0 评论