首页 > 系统服务 > 详细

Linux网络编程------网络编程基础

时间:2014-07-17 21:38:39      阅读:379      评论:0      收藏:0      [点我收藏+]

Socket(套接字),类似文件描述符,三种

1、流式套接字(SOCK_STREAM):可以提供可靠的、面向连接的通讯流,它使用TCP协议。TCP保证了数据传输的正确性和顺序性。

2、数据报套接字(SOCK_DGRAM):定义了一种无连接的服务,数据通过相互独立的报文进行传输,是无序的,并且不保证可靠,无差错,它使用数据报协议(UDP)。

3、原始套接字(SOCK_RAW):直接基于IP协议。

网络地址

struct sockaddr用于记录网络地址:

struct sockaddr

{

  u_short sa_family;//协议族,采用“AF_xxx”形式,如:AF_INET(IP协议族)

     char sa_data[14];//14字节特定协议地址

}

但常用的是sockaddr_in记录网络地址

struct sockaddr_in

{

  short int sin_family;//协议族

      unsigned short int sin_port;/*端口号*/

      struct in_addr sin_addr;//协议特定地址

      unsigned char sin_zero[8];/*填0*/

}

struct in_addr{

  union{

    struct{

        unsigned char s_b1,s_b2,s_b3,s_b4;

      }S_un_b;

    struct{

        unsigned short s_w1,s_w2;

      }S_un_w;

  unsigned long S_addr;

  }S_un_w;

}IN_ADDR;

网络上bigendian(低字节先传输)

socket 编程函数

socket:创建套接字

bind:用于绑定IP地址和端口号到socket

connect:该函数用于与服务器建立连接

listen:设置服务器能处理的最大连接要求

accept:等待来自用户客户端的socket连接请求

send:发送数据

recv:接收数据

Linux网络编程------网络编程基础,布布扣,bubuko.com

Linux网络编程------网络编程基础

原文:http://www.cnblogs.com/liutianyi10/p/3851619.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!