socket编程机制

Socket是网络驱动层提供给应用程序编程的接口和一种机制。
      在应用程序中创建,通过一种绑定机制与驱动程序建立关系,告诉自己所对应的IP和Port(端口)
      是网络上运行的程序之间双向通信链路的最后终结点,它是TCP和UDP的基础。
      IP与端口号组合而得出的Socket。
端口:应用程序需要进行网络通信靠网络端口。


Socket的机制是什么?(简述)客户端与服务器的数据通信。
什么是TCP网络编程?
什么是UDP网络编程?
TCP与UDP协议的区别?




TCP:传输控制协议,是面向连接的通信协议。
特点:1、提供两台计算机间可靠、无差错的数据传输。
      2、数据源和接收目标之间会建立一个虚拟的连接。
      3、TCP协议具有可靠性和有序性,并且以字节流的方式发送数据。


UDP:用户数据报协议,是无连接通信协议。
特点:1、不保证数据的可靠传输,但能够向若干个目标发送数据,和接收发送至若干数据源的数据。
      2、目标机在接受到数据包后,不会回发确认信息。
      3、传输方式是无序的,高效率。
首先需要将要传输的数据定义成数据报(Datagram),每个数据报的大小限定在64KB以内。

在数据报中指明数据所要达到的端点(Socket,主机地址和端口号),然后再将数据报发送出去。



URL:是统一资源定位符
URL的格式:协议名称:// 主机名:端口号 / 文件路径 文件名




Socket通信   
客户端Socket类    
   规定一个主机和端口号创建一个 Socket实例,连到服务器上。
   打开连接到Socket的输入/输出流。
   按照一定的协议对Socket进行读/写操作。
   关闭输入/输出流和Socket。


服务器端ServerSocket类
   指定一个用来等待的连接的端口号创建一个 ServerSocket实例。
   accept方法使服务器处于阻塞状态,等待用户请求。


下一次通信,必须和服务器重新进行连接。
怎样做到一次连接,多次通信?多线程+循环处理接收客户端发过来的数据。


注意细节:
若在创建Socket的时,没有指定端口号,系统就会分配一个还没有被其他程序使用的端口号。
若在创建Socket的时,没有指定IP地址,那么在发送数据的时候底层驱动程序会选择,
计算机上任意IP地址,作为发送源IP地址,再有绑定该IP地址的网卡发送数据。


UDP通信
表达通信数据的数据报类DatagramPacket。
进行端到端通信的类DatagramSocket: 承当发送数据 和 接收数据时的监听器 角色。
     只允许数据报发往一个目的地址。
广播通信的类MulticastSocket:用于接收端(客户端)
     允许将数据报以广播的方式发送到某个端口的所有客户。








URL连接对象是怎样解析资源的?
1.创建URLConneciton类的对象
创建URL对象------对象的openConnection()
2.建立输入/输出数据流
3.读取远方的计算机节点的信息或向其写入信息




OSI的七层结构从上到下依次是:
7 应用层 ;6 表示层 ;5 会话层 ;4 传输层 ;3 网络层 ;2 数据链路层 ;1 物理层 
TCP/IP的五层结构
5 应用层;4 运输层;3 网络层; 2 链路层;1 物理层。


计算机网络的拓扑结构:
星型结构、总线型、网状结构、树形结构、环状

猜你喜欢

转载自blog.csdn.net/weifddx/article/details/8975983