
网络编程
文章平均质量分 74
mm_hh
这个作者很懒,什么都没留下…
展开
-
NAT技术与代理服务器调研
一、首先看看什么是NAT技术以及什么时候会涉及到它?1、所谓NAT技术就是网络地址转换。 2、那么它用在什么地方呢? 在专用网内部的一些主机本来已经分配到了本地IP地址,但是现在又想和因特网上的主机通信。那么应当采用什么措施呢? 最简单的办法就是设法再申请一些全球IP地址,但这在很多情况下是行不同的,因为全球的IPv4的地址已经所剩不多了,目前使用最多的方法就是采用网络地址转换。但是这种原创 2017-06-18 20:28:01 · 306 阅读 · 0 评论 -
TCP服务器的单进程实现
一、tcp_server(TCP服务器)//tcp_server.c代码 1 #include<stdio.h> 2 #include<sys/types.h> 3 #include<sys/socket.h> 4 #include<string.h> 5 #inc原创 2017-06-25 16:39:45 · 666 阅读 · 0 评论 -
TCP/IP协议
TCP协议[传输控制协议]开放分类:互联网通信技术 TCP(Transmission Control Protocol传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC793定义。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内另一个重要的传输协议。在因特网协议族中,TCP层是位于IP层之上,应用层之下的中间层。转载 2017-06-25 12:44:48 · 643 阅读 · 0 评论 -
常见路由表生成算法调研
一、相关概念路由:(名词)数据包从源地址到目的地址所需要经过的路径,由一系列节点组成。路由(动词)某个路由节点为数据报选择投递方向的选路过程。 路由节点:一个具有路由功能的主机或者路由器,维护一张路由表,通过查询路由表来决定向那个节点发送数据包。路由表:由很多路由条目组成,每个条目都指明去往某个网络的数据包应该经由哪个接收和发送,其中最后一个是缺省路由条目。 路由条目:路由表中的每一行,每个条目主要原创 2017-06-22 22:02:20 · 528 阅读 · 0 评论 -
TCP的三次握手&&四次挥手
TCP段格式: TCP((Transmission Control Protocol)传输控制协议,是一个面向连接的协议。在运用此协议进行数据传输前都会进行连接的建立工作(三次握手);当数据传输完毕,连接的双方都会通知对方要释放此连接(四次挥手)。认识TCP标志位tcp标志位有6种标示:SYN(synchronous建立联机)ACK(acknowledgement 确认)PSH(push传送原创 2017-06-19 23:27:37 · 286 阅读 · 0 评论 -
I/O多路转接之--select
一、select概括系统提供select函数来实现多路复用输入/输出模型。select系统调用是用来让我们的程序监视多个文件句柄的状态变化的。程序会停在select这里等待,直到被监视的文件句柄有一个或多个发生了状态变化。关于文件句柄,就是一个整数,我们最熟悉的句柄就是 0、1、2三个,0 是标准输出,1 是标准输入,2 是标准错误输出。0、1、2是整数表示的,对应的FILE*结构的表示就是stdi原创 2017-06-22 20:02:15 · 390 阅读 · 0 评论 -
dup/dup2/dup3(输入文件描述符重定向)
一、dup 系列函数的功能对输入文件描述符重定向。 dup参数越多,功能越齐全,要求也越细。二、dup的基本结构 三、dup的代码实现Makefile文件: 1 dup : dup.c 2 gcc -o $@ $^ 3 .PHONY:clea原创 2017-06-21 21:51:34 · 1845 阅读 · 0 评论 -
socketpair(双向通信)--高级IO
一、五种IO模型1、 阻塞I/O(eg:钓鱼者(王一)只钓鱼,不和任何人说话,也不干任何其他的事)2、非阻塞I/O (eg:钓鱼者(王二)一边钓鱼,一边问王一到底钓了多少鱼,但是王一并没有回答他,但他还是会一边钓他的鱼一边重复的问王一)3、 信号驱动I/O(SIGIO)(eg:钓鱼者(王三)他在自己的鱼竿上绑了一个铃铛(相当于一个信号),然后去旁边看手机去了,当铃铛响后,它会把鱼钓上来)4、 I/O原创 2017-06-21 17:55:26 · 1318 阅读 · 0 评论 -
TCP的四种定时器
TCP的四种定时器TCP在建立连接后会启动四个定时器:重传计时器:Retransmission Timer 坚持计时器:Persistent Timer 保活计时器:Keeplive Timer 时间等待计时器:Time_Wait Timer1、重传计时器为了控制丢失的报文段或丢弃的报文段,也就是对报文段确认的等待时间。当TCP发送报文段时,就创建这个特定报文段的重传计时器,可能发生两种情况原创 2017-06-19 21:51:14 · 909 阅读 · 0 评论 -
TCP首部的URG和PSH
1、URG推送位紧急数据的起始点=序号; 紧急数据的终止点=序号+紧急指针;(综上,(URG)紧急指针就是记录紧急数据的字节数,紧急指针永远为正数)1)在紧急数据后面的数据为普通数据,需要按序缓存 2)窗口为0也可以发送紧急数据 3)紧急数据都处理完成后,tcp就告诉进程恢复到正常操作 例如,已经发送了很长的一个程序要在远地的主机上运行。但后来发现了一些问题,需要取消程序的运行。因此用户从键原创 2017-06-19 17:43:44 · 412 阅读 · 0 评论 -
端口号
一、常用端口及其分类电脑在Internet上相互通信需要使用TCP/IP协议,根据TCP/IP协议规定,电脑有256×256(65536)个端口,这些端口可分为TCP端口和UDP端口两种。如果按照端口号划分,它们又可以分为以下两大类: 1. 统保留端口(从0到1023) 这些端口不允许你使用,它们都有确切的定义,对应着因特网上常见的一些服务,每一个打开的此类端口,都代表一个系统服务,例如80端口原创 2017-06-19 17:18:43 · 735 阅读 · 0 评论 -
arp协议与rarp协议
说起arp,那么什么是arp呢?arp协议是什么呢?以及如果编写arp脚本抓取对应主机mac地址?这都是我以下需要讲的:1.什么是ARP协议ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。 但这个目标原创 2017-06-19 16:56:56 · 5139 阅读 · 0 评论 -
CRC校验
这个词语在操作系统&&组成原理一、CRC基本认识1、CRC的概念:循环校验码(CRC码):是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。2、生成CRC码的基本原理:任意一个由二进制位串组成的代码都可以和一个系数仅为‘0’和‘1’取值的多项式一一对应。例如:代码1010111对应的多项式为x6+x4+x2+x+1,而多项式为x5+x3+x2+x+1对应的代码10原创 2017-06-18 20:55:25 · 1009 阅读 · 0 评论 -
Linux脚本下倒引号(`)与$()
一、倒引号(`)在Linux的作用倒引号(`)在Linux中就是将倒引号内的Linux命令先执行,然后将执行结果赋予变量。二、$()的作用$()和 ` `:在 bash shell 中,$( ) 与` ` (倒引号) 都是用来做命令替换用(commandsubstitution)的。例如 version=$(uname -r)和version=uname -r都可以是version得到内核的版本原创 2017-06-26 22:56:29 · 2120 阅读 · 0 评论