- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于WinSock的邮件系统.ppt
基于WinSock的邮件系统 1 设计目标: 2 相关技术介绍: 2.1 TCP/IP协议 (2)网络层:有时又被称为互连网层,负责分组在网络中的活动,包括ip(网际协议)、ICMP(Internet互连网控制报文协议)以及IGMP(Internet组管理协议)。 (4)应用层:该层负责处理实际的应用程序细节,包括大家十分熟悉的Telnet(电子公告版),HTTP(World Wide Web服务),SMTP(简单邮件传输协议),FTP(简单文件传输协议)和SNMP(简单网络管理协议)等著名协议。 2.2 winsock网络编程技术 由于Winsock的服务是以动态链接库Winsock Dll形式实现的,所以必须先调用WSAStartup函数对Winsoc Dll进行初始化,协商Winsock的版本支持,并分配必要的资源。如果在调用Winsock函数之前,没有加载winsock库,则会返回SOCKET_ERROR错误,在应用程序关闭套接字后,还应调用WSACleanup函数终止对Winsock Dll的使用,并释放资源,以备下次使用. 2.2.3 Winsock编程模型: 2.3 windows多线程编程技术 2.3.1 多线程技术介绍: 2.3.2线程的创建和终止线程: Win32函数库中提供了多线程控制的操作函数,包括创建线程、终止线程、建立互斥区等。首先,在应用程序的主线程或其他活动线程的适当地方创建新的线程,创建了新线程后,则该线程就开始启动执行了当线程函数返回后,线程自动终止,如果线程在执行中终止的话,则可以调用函数实现,相关函数等请查看论文 3.2.3 SMTP服务器各个命令详细处理流程:(见论文) 4.2.3 pop3服务器客户端命令处理流程: 4.2.3 pop3服务器各个命令详细处理流程:(见论文) * * 1.1 SMTP发送邮件服务器(c语言) 1.2 POP3接受邮件服务器(c语言) 1.3 php WebMail客户端 2.1.1 发展至今最成功的通信协议,它源于20世纪60年代末美国政府资助的一个分组交换网络研究项目,到20世纪90年代已经发展成为计算机之间最常用的组网协议。它允许分布在各地的装着完全不同的系统的计算机互相通信。它是一个真正的开放系统,该协议的定义及多中实现可以通过多途径无偿得到。随着pc的普及,tcp/ip以其开放的特点,成为了internet的基础,该广域网(WAN)把全世界数以百万的电脑连接在了一起。 2.1.2 TCP/IP结构,如下图: 各种应用层协议 TCP UDP IP 设备驱动程序及接口卡 应用层 传输层 网络层 链路层 2.1.3 各层功能概述: (1)链路层:有时被称作数据链路层或网络接口层,通 常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡,它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。该层包含的协议有:ARP(地址转换协议)和RARP(反向地址转换协议). (3)传输层:该层主要为两台主机的应用程序提供端到端的数据通信,它分为两个不同的协议:TCP(传输控制协议)和UDP(用户数据报协议)。TCP提供端到端的质量保证的数据传输,该层负责数据的分组,质量控制和超时重发等,对于应用层来说,就可以忽略这些工作。UDP则只提供简单的把数据从一端发送到另外一端,至于数据是否到达或按时到达、数据是否损坏都必须由应用层来做。这两种协议各有用途,前者可用于面向连接的应用,而后者则在及时性服务中有着重要的用途,如网络多媒体通信等。 Web服务器 Web服务器 http协议 TCP TCP tcp协议 IP IP IP Ip协议 Ip协议 以太网驱动程序 以太网驱动程序 令牌环网驱动程序 令牌环网驱动程序 令牌环 路由器 以太网 2.2.2 错误检查和控制: 错误检查和控制对于Winsock应用程序是至关重要的,不成功的Winsock调用返回的最常见的值是SOCKET_ERROR,它是值为-1的常量。如果错误发生了,可以用WSAGetLastError函数来获得一段代码,这段代码明确地表明错误的原因。: 2.2.1 Winsock的启动和终止: socket() 服务器 bind() listen() accept() 阻塞,等待客户数 connect() socket() 客户机 建立连接 write() read() 请求数据 处理服务请求 write() read() 应答数据 close() close() 在Windows的一个进程内,包含一个或多个线程,线程是指进程的一条执行路径,它包含独立的堆栈和CPU寄存器状态,每个线程共享所有的进程资源,包括打开的文件,信号标识及动态分配
您可能关注的文档
最近下载
- 《工程建设标准强制性条文》电力工程部分2016版.pptx VIP
- 2023-2024学年天津市小学三年级数学第一学期期末统考试题含答案.doc
- 2024年广东省深圳33校联考九年级英语试卷(含答案) .pdf VIP
- 2024-2025学年上海市浦东新区九年级上学期期中考语文试卷含答案.docx
- 包材质量承诺书范文.docx
- 经典童话故事宝莲灯.pptx VIP
- 湖南省九校联盟2025届高三第一次联考 英语试卷(含答案详解)原版.pdf
- XXX钢屋架安装技术交底.doc VIP
- IPC7525B2011(CN)Stencildesignguidelines模板设计指南(中文版).pdf
- 个人租房合同(一张纸打印版).docx VIP
文档评论(0)