发文章
发文工具
撰写
网文摘手
文档
视频
思维导图
随笔
相册
原创同步助手
其他工具
图片转文字
文件清理
AI助手
留言交流
面向对象课上,金旭亮老师(CSDN博客专家,大牛)说,只有通过网络编程才能提升一个人的编程能力,因为在C#中的网络编程, 又要用到多线程控制,还要考虑通信的效率,通信的控制等,要控制数据传送的正确性,可靠性。虽然以前接触了一部分网络编程,但是还是理论不够系统,所以打算在系统的学习一下网络编程的基础理论。
1. Socket简介
windows Socket,就是在windows下编程用的socket, socket其实就是一套网络编程机制,封装了对网络数据流的一些控制。Socket最早本来是unix系统下的编程接口,但是后来在unix上的广泛使用,在美国政府和军方的推动下,TCP/IP网络的流行,以及TCP/IP模型成为标准模型,Socket也成为Unix上标准的网络编程接口。1991年微软把Unix上面的Socket的原理引用到自己的windows平台下,所以有了现在广泛使用的windows socket. 因为网络模型已经非常稳定了,而且多年没有大的改变,所以在Socket的发展上也比较平缓,几乎没有大的改变,现在最常用的就是32位的wsock.dll.提供我们进行在windows中网络编程。
2. C#中的Socket
C#中用的Socket是在windows socket的基础上进行封装的类库,更方便的使用。并且C#中还在Socket的基础上继续封装了TcpListener,TcpClient,UdpClient等类库来简化我们的开发工作。
3. 网络中的通信
为了让网络中的两台电脑中的两个进程可以进行通信,我们需要通过IP地址来标识主机,用端口号标识程序,之所以不用进程号标识程序,是因为在不同的终端上相同的程序可能会有不同的进程号,而且不同的操作系统可能也会有不同的进程号分配方式。
Socket实际上就是网络进程通信中所要使用的一些缓冲区及相应的数据结构。
4. window Socket的类型
有三种不同的windows Socket:
(1). 流式套接字(SOCK_STREAM):提供了一种可靠地,面向连接的双向数据传输的服务,在这种套接字中,数据的传送没有差错,不会重复发送。如果使用TCP协议发送大量数据,则需要使用这种套接字。
(2). 数据报套接字(SOCK_DGRAM): 提供无连接的,不可靠的双向数据传送。数据在传送的过程中可能会丢失,但是不负责丢失的数据,并且传送的数据以包为基本单位,包的最大为1046字节的内容,接收到的包不保证按照发送顺序。UDP协议实现了数据报套接字。
(3). 原始套接字(SOCK_RAW): 可以对较低层协议进行访问。
网络上的所有应用程序都是基于套接字进行开发的,无论的网路游戏还是网页,都是在套接字的接触上进行的再次开发。
套接字屏蔽了网络模型和TCP/IP协议的复杂性,使得网络开发变得更加
来自: 昵称10504424 > 《工作》
0条评论
发表
请遵守用户 评论公约
socket
同样,socket接口增加了网络通信操作的抽象定义,与文件操作一样,每个打开的socket都对应一个整数,我们称它为socket描述符,该整数也是socket描述符在文件描述符表中的索引值。但socket描述符在描述...
1、socket是什么?套接字是什么?
UNIX/Linux 中的 socket 是什么?我们可以通过 socket() 函数来创建一个网络连接,或者说打开一个网络文件,socket() 的返回值就是文件描述符。有了文件描述符,我们就可以使用普通的文件操作函数来传...
计算机经典书籍汇总
计算机网络及Windowssocket网络编程
计算机网络及Windowssocket网络编程 Windows socket之IOCP实例----IOCP开发驾照理论考试系统 Windows socket IO完成端口开发驾照理论考试系统实例 这一节我们讲解如何利用套接字完成端口开发...
网络通讯编程基础——TCP/UDP/IP Multicast
网络通讯编程基础——TCP/UDP/IP Multicast 作者 陆其明-->CAsyncSocket类在较低层次上封装了Windows Socket API,并且通过内建一个(隐藏的)窗口,实现了适合Windows应用的异步机制(Windows S...
Windows Socket编程简介_网络技术_程序开发_远播教育网
Windows Socket编程简介_网络技术_程序开发_远播教育网Windows Socket编程简介发表时间:2008-02-22 编辑:江昌华 来源:编者按:WinSock编程使用WinSockAPI的编程,应该了解TCP/IP的基础知识。使用i...
与Socket的第一次“约会”
与Socket的第一次“约会”.NET 4.0网络开发入门之旅--与Socket的第一次"约会" 注: 这是一个针对 网络开发领域初学者 的系列文章,可作为《.NET 4.0 面向对象编程漫谈 》一书的扩充阅读...
Windows Sockets网络编程读书笔记(及简单C/S实现)
网络软件商为 Windows 开发一套标准的、通用的 TCP/ IP 编程接口 ,并使之类似于 UNIX下的 sockets ,这就是 Windows sockets ;Windows so...
物联网网络编程、Web编程综述
只有路由器的互联网IP才能被外界所获知,外界是不能主动获知局域网IP具体对应哪个设备的,只有路由器1才知道,因此所有对外发送的数据包...
微信扫码,在手机上查看选中内容