Sundy视频学习------TCPIP编程基础

一、
字节序:多字节数据在计算机内存中存储或者网络传输时各字节的存储顺序
主机序 //网络序
常见的字节序:Little endian (小端)将低序字节存储在起始地址
大端:将高位字节存储在起始地址
htonl(host to net long)/htons/ntohs/ntohl大小端模式的转换
二、IP地址及端口号
struct sockaddr
{
short int sa_family;
char sa_data[14];
}

for ipv4
struct sockaddr_in    /*INET*/
{
sa_family_t  sin_family;
struct in_addr  sin_addr;
unsigned short int sin_port;
}

struct in_addr
{
uint32_t  s_addr;
}

struct sockaddr_un /*本地UNIX*/
{
sa_family_t  sun_family;
char sun_path[108];
}

三、IP地址的转换
int inet_aton(const char *cp, struct in_addr inp);
in_addr_t inet_addr(const char *cp);
int inet_ntoa(const char *cp, struct in_addr *inp);
四、DNS –HostName
struct hostent
{
char *h_name;
char **h_aliases;
int h_addrtype;
int h_length;
char **h_addr_list;
#define h_addr h_addr_list[0]
}

struct hostent *gethostbyname(const char *name);

五、TCP编程
服务器socket、bind、listen、accept、send/recv、close
客户端socket、connect、send/recv、close

不通过IP,而通过gethostbyname来请求服务器端: 无法连接是因为没有启动daytime服务;解决办法:安装xinetd、修改/etc/xinetd.d/daytime文件,将两个disable 的值yes改为no,然后重启/etc/init.d/xinetd restart

六、UDP编程
服务器socket、bind、recvfrom、处理、sendto、close
客服端socket、sendto、recvfrom、close

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值