Socket规划(1)
socket定义
于Linux网络编程是通过socket进行的。
人们常说的socket是一种特殊的I/O接口,他也是一个文件描写叙述符。socket是一种经常使用的进程之间通信机制,通过它不仅能实现本地机器上的进程之间的通信,并且通过网络可以在不同机器上的进程之间进行通信。
每个socket都用一个半相关描写叙述{协议,本地地址,port号}来表示;一个完整的套接字则用一个相关描写叙述{协议、本地地址、本地port、远程地址、远程port}来表示。
socket也有一个类似于打开文件的函数调用,该函数返回一个整型的socket描写叙述符。随后的连接建立、传输数据等操作都是通过socket实现的。
socket类型
(1)流式socket
流式socket(SOCK_STREAM)。
流式套接字提供可靠的、面向连接的通信流。它使用TCP协议,从而保证了传输数据的正确性和顺序性
(2)数据报socket(SOCK_DGRAM)
数据报套接字定义了一种无连接的服务,数据通过相互独立的报文进行传输,是无序的,而且不保证是可靠、无差错的。它使用数据报协议(UDP)
(3)原始socket
原始套接字同意底层协议如IP或ICMP进行直接訪问,它功能强大但使用较为不方便,主要用于一些协议的开发。
版权声明:本文博主原创文章,博客,未经同意不得转载。
Socket规划(1)的更多相关文章
- Socket规划中的局域网内测试
前面提到的Socket信息及文件传输软件,如何测试和使用它? 事实上仅仅要推断client及server的局域网连通就可以. 1.Server在cmd下输入 ipconfig/all获得IP地址或者本 ...
- 【Socket规划】套接字Windows台C语言
[编译环境]:Visual Studio 2013 这是服务端实现流程. #include<stdio.h> #include<stdlib.h> #include<wi ...
- socket.io,远程控制你的幻灯片
原文:http://www.cnblogs.com/xiezhengcai/p/3964455.html 中秋休息了几天,今天又开始捣鼓socket.io了.今天的任务是通过socket.io控制你的 ...
- .NET Socket服务编程之-高效连接接入编
在.NET上编写网络服务深入都有2,3年了,而这些时间时如何在.NET里实现网络服务积累了一些经验.在接下来的时间里会把这方面的经验通过博客的方式分享出来.而这一章主要是讲解在如果提高服务连接接入的效 ...
- 零配置Socket TCP消息通讯服务容器EC
EC全称是elastic communication,是基于c#实现的Socket网络通讯服务容器,支持windows .Net和mono.通过EC容器可以让开发人员在不了解Socket网络通讯知识和 ...
- 利用BlazeDS的AMF3数据封装与Flash 进行Socket通讯
前几天看到了Adobe有个开源项目BlazeDS,里面提供了Java封装AMF3格式的方法.这个项目貌似主要是利用Flex来Remoting的,不过我们可以利用他来与Flash中的Socket通讯. ...
- C# 实现的多线程异步Socket数据包接收器框架
转载自Csdn : http://blog.csdn.net/jubao_liang/article/details/4005438 几天前在博问中看到一个C# Socket问题,就想到笔者2004年 ...
- 【原版的】PHP技术成长规划过程中猿人
PHP程序猿的技术成长规划 作者:黑夜路人(2014/10/15) 依照了解的非常多PHP/LNMP程序猿的发展轨迹.结合个人经验体会,抽象出非常多程序猿对未来的迷漫,特别对技术学习的盲目和慌乱.简单 ...
- NET Socket服务编程
smark https://github.com/IKende/ .NET Socket服务编程之-高效连接接入编 在.NET上编写网络服务深入都有2,3年了,而这些时间时如何在.NET里实现网络服务 ...
随机推荐
- poj 1611 The Suspects(并查集)
The Suspects Time Limit: 1000MS Memory Limit: 20000K Total Submissions: 21598 Accepted: 10461 De ...
- [Cocos2d-x]解决Android平台ndk-build时不自动删除外部库
参考链接: http://blog.chinaunix.net/uid-26009923-id-3430612.html http://hi.baidu.com/hpyfei/item/52a2b21 ...
- 算法起步之Bellman-Ford算法
原文:算法起步之Bellman-Ford算法 从这篇开始我们开始介绍单源最短路径算法,他是图算法之一,我们前面说的贪心,图的遍历,动态规划都是他的基础,单源最短路径其实说的就是图中节点到节点的最短路径 ...
- GitHub上最火的74个Android开源项目
GitHub上最火的74个Android开源项目 1.ActionBarSherlock ActionBarSherlock应该算得上是GitHub上最火的Android开源项目了,它是一个独立的库, ...
- Pyocr 0.2 发布,Python 的 OCR 库 - 开源中国社区
Pyocr 0.2 发布,Python 的 OCR 库 - 开源中国社区 Pyocr 0.2 发布,Python 的 OCR 库
- Deep Learning(深度学习) 学习笔记(四)
神经概率语言模型,内容分为三块:问题,模型与准则,实验结果.[此节内容未完待续...] 1,语言模型问题 语言模型问题就是给定一个语言词典包括v个单词,对一个字串做出二元推断,推断其是否符合该语言表达 ...
- ssh 即使主机,同nohup背景脚本
下面的脚本工具:先从本地副本的脚本到远程主机,然后ssh即使在远程主机,脚本的运行副本前(因为脚本需要运行很长,它运行在后台),该脚本仅用于备忘录,如果请指点不足! #!/bin/bash cd /t ...
- 〖Groovy〗语言使用贴士(Tips)(转)
[Groovy]是一门运行在[JVM]之上的动态语言.由[James Strachan]和[Bob McWhirter]于2003年启动开发,之后于2004年3月成为[JSR 241](Java Sp ...
- A Game of Thrones(5) - Jon
There were times—not many, but a few—when Jon Snow was glad he was a bastard. As he filled his wine ...
- 中国科学院信息project研究所 第四研究室实习生/应届生招聘
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2hpWmhpeGlu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...