TCP/IP (传输控制协议,因特网互联协议)
TCP是面向连接的通信协议,通过三次握手建立连接,提供一种可靠的数据流服务,采用“带重传的肯定确认”技术来实现传输的可靠性。
Tcp/IP的层次
应用层:判断是否符合应用层的格式。
传输层:主要负责信息流的格式化和提高一个可靠的传输。(TCP协议规定,接受端必须发回确认,假如分组丢失,必须重新发送。
网络层:接受传输层发来的信息,并命令网络接口层发送这些数据,最终将信息发送到远程主机上,等待发送回来信息。
Socket:1.创建客户端或服务端
2.服务端或客户端监听是否有服务端或客户端传来的连接信息(Listening)
3.创建点对点连接(Connect)
4.发送accept信息给对方,表示两者已经建立连接,并且可以互相传递信息(Send)
5.Socket发送、接受和处理信息。但不会管发送的内容是什么。
TcpClient:主要通过带人主机地址或者IPEndPonint(处理IP地址和端口的封装类)对象,然后调用Connect进行和服务器点对点的连接,连接成功后通过GetStream方法返回NetworkStream对象。
TcpListener:用于监视服务端或客户端的连接请求,一旦有连接请求信息,立刻交给TcpClient的AcceptTcpClient方法捕捉,Start方法用于开始监听。
NetworkStream(Socket)为指定的socket创建NetworkStream类的新实例。
NetworkStream(Socket,Boolean ownsSocket)ownsSocket表示指示NetworkStream是否拥有该Socket。
NetworkStream(Socket,FileAccess)FileAccess的值按位组合,这些值指导授予所提供的socket上的NetworkStream的访问。
1.要构造产生NetworkStream的实例,则必须使用连接的Socket。
2.如果该NetworkStream拥有对Socket的所有权,则在授予NetworkStram的Close方法时会同时关闭Socket。否则关闭NetworkStream时不会关闭Socket。
3.能够创建对指定Socket带有读写权限的NetworkStream。