socket 套接字接口是各种语言tcp udp的网络操作的基础。

直接用socket 对象开发 可以选择 udpsocket  或者 tcpsocket ,两者在使用上仅一些方法和参数不同,所有的底层都是socket来帮我们实现的

udp重点:

{

客户端:

Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

服务端:

socket.ReceiveFrom    将数据报接收到数据缓冲区并存储终结点。

无监听,只有一个终结点

}

tcp重点:

{

客户端:

Socket c = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); //创建一个Socket

c.Send(bs, bs.Length, 0); //发送信息

服务端:

bytes = socket.Receive(recvbytes, recvbytes.Length, 0);//从客户端接受信息

有监听,持续监听

}

------------------------------

tcplistener   是对socket的封装,让用户更容易的实现简单的业务需求

myListener.AcceptTcpClient();

听说过 udplistener,当然没有,udp本身就没有监听的  

TCPClient和 UDPClient  和tcplinster 一样,这也是对socket的简化。

TCPClient和tcplinster 一起用

UDPClient和UDPClient 一起用
{

客户端:

  1. IPAddress HostIP = new IPAddress.Parse ( "远程计算机IP地址" ) ;
  2. IPEndPoint host = new IPEndPoint ( HostIP , 8080 ) ;
  3. UdpClient.Send ( "发送的字节" , "发送的字节长度" , host ) ;

服务端:

  1. server = new UdpClient ( ) ;
  2. receivePoint = new IPEndPoint (new IPAddress ( "127.0.0.1" ) , 8080 ) ;
  3. byte[] recData = server.Receive ( ref receivePoint ) ;

}

非常简单! 接下来在来理清 socket旗下的一些高级用法

【socket】一分钟理清 socket udpsocket tcpsocket tcplistener TCPClient和 UDPClient的更多相关文章

  1. 3分钟接入socket.io使用

    WebSocket 简介 传统的客户端和服务器通信协议是HTTP:客户端发起请求,服务端进行响应,服务端从不主动勾搭客户端. 这种模式有个明显软肋,就是同步状态.而实际应用中有大量需要客户端和服务器实 ...

  2. C# Socket编程(4)初识Socket和数据流

    经过前面基础知识作为背景,现在对Socket编程进行进一步的学习.在System.Net.Socket命名空间提供了Socket类,利用该类我们可以直接编写Socket的客户端和服务的的程序.但是直接 ...

  3. nginx、php-fpm默认配置与性能–TCP socket还是unix domain socket【转】

    原文地址:https://www.cnxct.com/default-configuration-and-performance-of-nginx-phpfpm-and-tcp-socket-or-u ...

  4. socket编程 —— 非阻塞socket (转)---例子已上传至文件中

    在上一篇文章 <socket编程——一个简单的例子> http://blog.csdn.net/wind19/archive/2011/01/21/6156339.aspx 中写了一个简单 ...

  5. 【转】C# Socket编程(4)初识Socket和数据流

    [转自:https://www.cnblogs.com/IPrograming/archive/2012/10/15/CSharp_Socket_4.html] 经过前面基础知识作为背景,现在对Soc ...

  6. Socket编程实践(2) Socket API 与 简单例程

    在本篇文章中,先介绍一下Socket编程的一些API,然后利用这些API实现一个客户端-服务器模型的一个简单通信例程.该例子中,服务器接收到客户端的信息后,将信息重新发送给客户端. socket()函 ...

  7. iPhone socket 编程之BSD Socket篇

    iPhone socket 编程之BSD Socket篇 收藏在进行iPhone网络通讯程序的开发中,不可避免的要利用Socket套接字.iPhone提供了Socket网络编程的接口CFSocket, ...

  8. Socket&GCDAsyncSocket(异步Socket)

    Socket ********************************************* 简单理解Socket 就是网络连接,可以实现两个点之间的数据通讯. •Socket允许使用长连 ...

  9. java的nio之:java的bio流下实现的socket服务器同步阻塞模型和socket的伪异步的socket服务器的通信模型

    同步I/O模型的弊端===>每一个线程的创建都会消耗服务端内存,当大量请求进来,会耗尽内存,导致服务宕机 伪异步I/O的弊端分析===>当对Socket的输入流进行读取操作的时候,它会一直 ...

随机推荐

  1. python(3)-函数动态参数

    先来看一段代码 def show(*arg): print(arg, type(arg)) if __name__ == "__main__": show(1) show(1,2, ...

  2. [改善Java代码]注意方法中传递的参数要求(replaceAll和replace的区别)

    有这样一个简单的需求:写一个方法,实现从原始字符串中删除与之匹配的所有子字符串,比如"蓝蓝的天,白云飘"中,删除"白云飘",输出"蓝蓝的天," ...

  3. Scala中的空

    Scala的有即Any,Scala的无是Null,null,Nil,Nothing,None,Unit.那么这几种空有什么区别呢? 一.Null&null 很多人一辈子都没有走出这个无.Nul ...

  4. HDU(搜索专题) 1000 N皇后问题(深度优先搜索DFS)解题报告

    前几天一直在忙一些事情,所以一直没来得及开始这个搜索专题的训练,今天做了下这个专题的第一题,皇后问题在我没有开始接受Axie的算法低强度训练前,就早有耳闻了,但一直不知道是什么类型的题目,今天一看,原 ...

  5. Swift泛型和泛型函数

    泛型(generic)可以使我们在程序代码中定义一些可变的部分,在运行的时候指定.使用泛型可以最大限度地重用代码.保护类型的安全以及提高性能.在Swift集合类中,已经采用了泛型.一.一个问题的思考怎 ...

  6. Visual Studio的MethMVVM

    MethMVVM介绍: Visual Studio Gallery是微软针对VisualStudio扩展提供的一种解决方案,在Visual Studio Gallery你能够找到各种不同主题的解决方案 ...

  7. 【wenqi】重置Centos 7 Root密码

    重置Centos 7 Root密码的方式和Centos 6完全不同.下面展示一下到底如何操作. 1 - 在启动grub菜单,选择编辑选项启动 2 - 按键盘e键,来进入编辑界面 3 - 找到Linux ...

  8. Linux 锁

    问题: 1.假如对某个文件加了锁/lock,但是程序退出时没有关闭锁,如果想在另外一个程序中用这个文件,如何办? 2.

  9. Codevs 1158 尼克的任务

    1158 尼克的任务 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 尼克每天上班之前都连接上英特网,接收他的上司发来的邮件,这些邮 ...

  10. private继承

    private继承并不如public继承一样具有is-a的关系. ------------------------------------------------------------------- ...