Linux Socket Programming by Example-第一章读书笔记

这些年,一直从事DLNA数字家庭网络的研发工作,却一直没有很好研究网络编程,接下来半年时间里打算认真

阅读Socket编程相关书籍,并记录下自己的一些感悟思考。


第一章首先回顾了Socket的由来。Socket的设计主要来自电话。

分析一下打电话的流程:

第一步:    发起端预先知道接收端的电话号码,并拨打对方号码。

第二步:   通过中继网络,将连接请求发送到接收端。

第三步:   接收方听到电话提示声音后拿起电话,并发送应答信号

第四步:  发起端接到回音信号,通信建立。


从上面可以看出: 一个通话过程有2个端, 并且目标端能通过网络寻找到。


引申到Socket, socket也是由(IP,Port)组成。IP地址用来寻找接收端。

不同的地方在于,电话只提供一种服务,而soecket为了提供多种服务,增加了port.


接下来,对比了管道(Pipe)和Socket的差别。

在Linux系统中,网络也是一种特殊的文件,所以,Socket也支持文件的一般操作(open,close,read,write)。

不过,由于是一种特殊的文件,并不支持lseek操作。


功能上的相同点:

管道(pipe)和Socket均不支持lseek

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值