Linux:Day20(下) http基础

Web Service

  Port number:

    0-1023:众所周知,永久的分配给固定的应用使用,22/tcp(ssh),80/tcp(http),443/tcp(https)

    1024-41951:亦为注册端口,但要求并不是特别严格,分配给程序注册为某应用使用,11211/tcp,11211/udp(memcached),3306/tcp(mysql)

    41952+:客户端程序随机使用的端口;动态端口,或私有端口;

  Socket:IPC的一种实现,允许位于不同主机(甚至同一主机)上不同进程之间进行通信;数据交换;Socket API,1983年,4.2 BSD

    SOCK_STREAM:tcp套接字

    SOCK_DGRAM:udp套接字

    SOCK_RAW:裸套接字

    

    TCP协议的特性:

      建立连接:三次握手

      将数据打包成段:校验和(CRC-32)

      确认、重传以及超时;

      排序:逻辑序号

      流量控制:滑动窗口算法

      拥塞控制:慢启动和拥塞避免算法

    Socket Domain(根据其所使用的地址):

      AF_INET:Address Family,IPv4

      AF_INET6:IPv6

      AF_UNIX:同一主机上不同进程之间通信时使用;

      每类套接字都至少提供了两种socket:流,数据报

        流:可靠地传递、面向连接、无边界;

        数据报:不可靠地传递、有边界、无连接;

    套接字相关的系统调用:

      socket():创建一个套接字;

      bind():绑定

      listen():监听

猜你喜欢

转载自www.cnblogs.com/sq5288/p/10791858.html