由一个问题引发的关于Socket的思考

1、Socket的本质是什么

是对底层协议(如TCP/IP)的抽象. 属于一种文件句柄

2、Socket是如何工作的

java  –>操作系统 –>  网卡  –>操作系统–>java

3、Socket和IO流什么关系

核心也是对IO流的操作,只是来源不同(网卡中的数据流而不是本地磁盘文件)

4、文件句柄(文件描述符)是什么?

linux系统里有两种文件句柄限制,一种是系统级的,一种是用户级的。

修改系统级的:
#echo “30720” > /proc/sys/fs/file-max
修改用户级的:
#sudo vi /etc/security/limits.conf
增加如下行:
* soft nofile 2048
* hard nofile 32768

5、标准输入、标准输出、错误输出

Java输入输出流
Linux的SOCKET编程详解
 Programming Linux sockets, Part 1: Using TCP/IP

socket编程原理

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注