SOCKET基础

原创 2008年10月01日 13:58:00

  呵呵,我的水平也只够写点基础的,如果你是高手,那么可以直接跳过了。。以免耽误时间。。。

  本文的目的只是为了帮助新手更好的入门,消除一些疑虑。

  SOCKET,顾名思义,套接字,插槽,为什么这么叫那,其实它是一种接口而生的结构体,就好像货车拉货,需要一个箱子来包装货物,它就是一种用于承载数据的介质,我们把数据放入其中,根据TCP/IP规则让我们来区分各个数据包的归宿,所谓规则就是IP+端口,只要大家明确了这个,那就都好理解了,可能开始都很迷糊,怎么传输还非要弄个SOCKET干嘛,这东西非得需要吗?这种疑虑同样在初期困扰着我,不过现在好了,我来帮助大家消除这个疑问,设置好sockaddr_in结构体,我们需要把它保存在创建的SOCKET中,所以需要这么一个BIND()函数,接下来,SOCKET有了,地址也绑定好了,如果作为服务端,需要进行监听啊,所以用到LISTEN(),来设置监听的队列长度,这里是否可以并发处理取决于你程序是否是并发程序,如果写成了单线程的,那就只能一个一个的来了,告知服务端开始监听指定SOCKET后,其实就是这个结构体在相应端口专门等待承载数据,就好比货车就位了等待货源一样,那么接下来需要一个ACCEPT()来负责接受货物,你可能又疑惑了,为什么刚刚监听了,怎么又来一个函数干嘛,呵呵,别急,这个函数自有他的用处,你想啊,数据来了,你需要怎样才能让该货物到达货车上那?这个函数其实起到了一个桥梁或者可以理解为是吊车的作用,他负责把接受到SOCKET结构体的信息相应的保存起来,说白了,我们接受了后往往需要给对方发送信息,那么ACCEPT()创建一个新的SOCKET来连接客户SOCKET,并保存起地址信息,这样我们就用新创建的套接字来和对方沟通,呵呵,这下多少明白一些了吧,好吧,剩下更加深入的就得靠大家自己了,我该说的都说了,有什么不对的地方多多批评,有什么有价值的就自己留下,:)。

Socket 基础编程(一)

一个通常意义上的Socket一般是分为Client与Server。 Server端需要实现:建立Socket-》绑定端口-》监听端口-》处理建链请求-》数据交互-》关闭链接。 Client端相对...
  • A_lier_inner_road
  • A_lier_inner_road
  • 2017年03月07日 21:10
  • 219

Socket通信入门小实例

Socket通信入门小实例
  • u012345283
  • u012345283
  • 2014年07月29日 20:45
  • 1920

socket网络编程-基础篇

学习内容: 1.学习基本概念,传输的同步阻塞式I/O编程,伪异步IO实现 2.学习基于NIO的同步非阻塞式编程 3.了解基于NIO2.0的异步非阻塞(AIO)编程 **...
  • u013067927
  • u013067927
  • 2018年02月01日 16:46
  • 11

我的IM - 基础篇[1] - Socket

我的IM - 基础篇[1] - Socket
  • cpcpc
  • cpcpc
  • 2011年01月10日 18:03
  • 1986

socketserver — 网络服务器的框架

+------------+ | BaseServer | +------------+ | v +-----------+ +-----------------...
  • u011845833
  • u011845833
  • 2016年03月29日 14:10
  • 411

计算机基础-Socket详解

Linux的SOCKET编程详解 1. 网络中进程之间如何通信 进 程通信的概念最初来源于单机系统。由于每个进程都在自己的地址范围内运行,为保证两个相互通信的进 程之间既互不干扰又协调一致工作,操作...
  • u013782203
  • u013782203
  • 2016年05月01日 11:13
  • 5268

网络编程2--毕向东java基础教程视频学习笔记

转载地址:http://www.cnblogs.com/wsw-tcsygrwfqd/p/5131781.html Day 23 08 Udp接收端 09 Udp键盘录入...
  • l_215851356
  • l_215851356
  • 2017年03月12日 16:48
  • 229

java socket编程(基础)

一、网络编程中两个主要的问题 一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输。 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地...
  • yangyi22
  • yangyi22
  • 2012年04月30日 14:10
  • 3189

SOCKET编程之使用AF_UNIX实现本机数据流通信示例

本程序由服务器端程序和客户端程序两部分组成。 服务器端程序 #include #include #include #include #include #include #i...
  • ssdsafsdsd
  • ssdsafsdsd
  • 2012年11月19日 17:08
  • 4918

Socket原理详解

1. 网络中进程之间如何通信 进 程通信的概念最初来源于单机系统。由于每个进程都在自己的地址范围内运行,为保证两个相互通信的进 程之间既互不干扰又协调一致工作,操作系统为进程通信提供了...
  • colin_126
  • colin_126
  • 2016年03月10日 14:21
  • 2232
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SOCKET基础
举报原因:
原因补充:

(最多只允许输入30个字)