实现一个简单的SMTP服务器

实现一个简单的SMTP服务器

IP地址(IP Address)
端口(Port) SMTP 服务的端口号是 25
协议(Protocol)
数据传输方式:SOCK_STREAM 表示面向连接的数据传输方式;SOCK_DGRAM 表示无连接的数据传输方式
服务端:建立socket,声明自身的端口号和地址并绑定到socket,使用listen打开监听,然后不断用accept去查看是否有连接,如果有,捕获socket,并通过recv获取消息的内容,通信完成后调用closeSocket关闭这个对应accept到的socket,如果不再需要等待任何客户端连接,那么用closeSocket关闭掉自身的socket。
服务端编程
1、加载套接字库,创建套接字(WSAStartup()/socket());

  • int socket(int af, int type, int protocol);其中,af 是 IP 地址类型,常用的有 AF_INET 和 AF_INET6。AF_INET 表示 IPv4 地址。type 为数据传输方式,常用的有 SOCK_STREAM 和 SOCK_DGRAM。protocol 表示传输协议,常用的有 IPPROTO_TCP 和 IPPTOTO_UDP,分别表示 TCP 传输协议和 UDP 传输协议。可以将 protocol 的值设为 0,系统会自动推演出应该使用什么协议。
  • SOCKET sock 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值