TCP/IP
Mr.LuoJ
打铁还需自身硬
展开
-
TCP/IP简述
TCP/IP通常被认为是一个四层协议系统,如图1.1所示:每一层负责不同的功能:1)链路层 有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡,他们一起处理与电缆的物理接口细节。2)网络层 有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络层协议包括:IP协议(网际协议)原创 2014-10-25 16:57:47 · 526 阅读 · 0 评论 -
epoll事件机制简介
epoll简介 a) epoll是对poll的改进;是linux2.6下性能最好的多路I/O就绪通知方法。相对于select和poll来说,epoll更加灵活并且不存在描述符限制。epoll使用一个文件描述符对其他的描述符进行管理;将用户所感兴趣的事件到内核进行注册,因此只需从用户态到内核态的一次copy,这与select、poll不同。而select、poll每次调用都要传递用户所有监原创 2017-01-17 20:23:25 · 486 阅读 · 0 评论 -
poll事件机制
serv.c基本知识 poll的机制与select类似,与select在本质上没有多大差别;同样是轮询多个描述符,再根据描述符的状态进行处理;但是poll没有描述符数量的限制,这个与机器的上限有关;缺点与select类似即需要将大量的描述符从用户态复制至内核态;而不论这些文件描述符是否就绪,它的开销随着文件描述符数量的增加而线性增加。函数 int poll(struct pollfd *原创 2017-01-17 12:03:38 · 4881 阅读 · 0 评论 -
TCP/IP三次握手和四次挥手
1、建立连接协议(三次握手)(1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1。(2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。(3) 客户必须再次回应服务段一个ACK报文,这是报文段3。2、连接终止协议(四次挥手)原创 2015-07-03 16:05:45 · 382 阅读 · 0 评论 -
Nagel算法
Nagel算法TCP/IP协议中,无论发送多少数据,总是要在数据前面加上协议头,同时,对方接收到数据,也需要发送ACK表示确认。为了尽可能的利用网络带宽,TCP总是希望尽可能的发送足够大的数据。(一个连接会设置MSS参数,因此,TCP/IP希望每次都能够以MSS尺寸的数据块来发送数据)。Nagle算法就是为了尽可能发送大块数据,避免网络中充斥着许多小数据块。Nagle算法的基本定义是任意时刻,最多只转载 2015-07-04 11:20:48 · 514 阅读 · 0 评论 -
网络字节序与主机字节序
原文地址:网络字节序与主机字节序作者:风从虎不同的CPU有不同的字节序类型 这些字节序是指整数在内存中保存的顺序 这个叫做主机序最常见的有两种1. Little endian:将低序字节存储在起始地址2. Big endian:将高序字节存储在起始地址LE little-endian最符合人的思维的字节序地址低位存储值的低位地址高位存储值的高位怎么讲是最转载 2015-04-03 11:26:53 · 336 阅读 · 0 评论 -
Unix命令行程序和内建指令
Unix命令行程序和内建指令文件系统▪ cat▪ cd▪ chmod▪ chown▪ chgrp▪ cksum▪ cmp▪ cp▪ du▪ df▪ fsck▪ fuser▪ ln▪ ls▪ lsattr▪ lsof▪ mkdir▪ mo转载 2015-03-16 17:18:56 · 837 阅读 · 0 评论 -
socket编程原理
1、问题的引入1) 普通的I/O操作过程:UNIX系统的I/O命令集,是从Maltics和早期系统中的命令演变出来的,其模式为打开一读/写一关闭(open-write-read-close)。在一个用户进程进行I/O操作时,它首先调用“打开”获得对指定文件或设备的使用权,并返回称为文件描述符的整型数,以描述用户在打开的文件或设备上进行I/O操作的进程。然后这个用户进程多次调用“转载 2015-03-16 17:13:31 · 454 阅读 · 0 评论 -
Linux的SOCKET编程详解
1. 网络中进程之间如何通信进 程通信的概念最初来源于单机系统。由于每个进程都在自己的地址范围内运行,为保证两个相互通信的进程之间既互不干扰又协调一致工作,操作系统为进程通信提供了相应设施,如UNIX BSD有:管道(pipe)、命名管道(named pipe)软中断信号(signal)UNIX system V有:消息(message)、共享存储区(shared memory转载 2015-03-16 17:10:55 · 371 阅读 · 0 评论 -
socket阻塞与非阻塞,同步与异步
1. 概念理解 在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式:同步: 所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事。例如普通B/S模式(同步):提交请求->等待服务器处理->处理转载 2015-03-16 17:09:06 · 493 阅读 · 0 评论 -
IP地址的三种表示格式及在Socket编程中的应用
使用TCP/IP协议进行网络应用开发的朋友首先要面对的就是对IP地址信息的处理。IP地址其实有三种不同的表示格式: 1)Ascii(网络点分字符串)- 2) 网络地址(32位无符号整形,网络字节序,大头) 3)主机地址 (主机字节序) IP地址是IP网络中数据传输的依据,它标识了IP网络中的一个连接,一台主机可以有多个转载 2015-03-16 17:07:46 · 454 阅读 · 0 评论 -
UDP数据包最大传输长度
以太网(Ethernet)数据帧的长度必须在46-1500字节之间,这是由以太网的物理特性决定的. 这个1500字节被称为链路层的MTU(最大传输单元). 但这并不是指链路层的长度被限制在1500字节,其实这这个MTU指的是链路层的数据区.并不包括链路层的首部和尾部的18个字节. 所以,事实上,这个1500字节就是网络层IP数据报的长度限制. 因为IP数据报的首部为20字节,所原创 2017-11-07 20:32:37 · 21243 阅读 · 0 评论