Chinaunix首页 | 论坛 | 博客
  • 博客访问: 231175
  • 博文数量: 59
  • 博客积分: 1215
  • 博客等级: 少尉
  • 技术积分: 575
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-09 02:18
文章分类

全部博文(59)

文章存档

2012年(53)

2011年(6)

分类: C/C++

2012-01-18 02:09:03

 第一章:
    说了是第一章,大家都能猜到没什么好说的,不过有些观点还是有价值的。第一个是提到了协议无关性,这个后面第十一章的时候会讲到的,主要是为了使程序兼容各种协议,使用getaddrinfo函数来实现。还有提到了迭代服务器、并发服务器、Unix守护进程等等这些概念,后面都会讲到。第一章就不多说了。
    
 第二章:
    这一章主要讲了TCP、UDP、SCTP协议这些传输层的东东。都是一些理论性的东西。
    首先简要提了下各种协议包括ICMP、ARP、DLPI.......
    接着开始说UDP、TCP:以下都是记录一些我平时没注意的地方。
      1、每个UDP都有长度。而TCP是一个字节流,没记录边界的。
      2、TCP的序列号是根据字节排的。
    接着是讲三路握手,SYN是可以带TCP选项的,包括最大分节大小、窗口规模等。

    接下来是比较经典的TCP状态转换图,编程的时候有什么问题可以看看他。
    下面讲了TIME_WAIT状态。
     讲SCTP的我没看。
    接下去的东西该记的就记吧,缓冲区大小及限制我没仔细看,有时间再仔细看一下,或者直接看TCPIP详解(其实主要讲MTU和分片、最小缓冲区大小、MSS这些东西)。

    接着讲TCP输出,这里提到一个TCP套接字的write成功表示的是可以重新使用原来的应用进程缓冲区,不表明对端的TCP或应用进程已接收到数据。而UDP表示所写数据报或所有片段已被加入数据链路层的输出队列。还有注意UDP不像TCP,他是没有套接字发送缓冲区的,不过有发送缓冲区大小的选项。
阅读(1465) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~