摘 要
互联网从诞生以来,就开始影响着地球的每一个角落,给予了人类一种全新的生活方式,随着互联网技术的不断发展,新兴的技术也层出不穷,即时通信系统就是这么一种以聊天形式为主的广受欢迎的互联网技术。现在即时通讯系统服务的内部拓扑中大部分采用客户/服务器模型,客户/服务器/客户模型和客户/客户模型,并且市场上应用的很多即时通信软件比如QQ和MSN都采用的是客户/服务器/客户模型,由于它们都需要由位于中心的服务器来协调,这对一些想拥有自己内部即时通信软件的小企业和家庭的局域网用户来说,服务器的成本实在是太大,于是我便有了编写本软件的构想。本软件功能成功摆脱了中心服务器的束缚,它的基本功能就是让用户能够在局域网上通过采用TCP/IP协议进行点对点交流。本软件通过Visual C++软件创建的是对话框应用程序,连接后服务器可以充当客户机,客户机也可以充当服务器。它们可以同一台计算机上,也可以把应用程序复制到另一台计算机上,这样没有中间服务器存在,在两个独立的计算机上分别运行应用程序,从而通过网络传递消息。
关键词:P2P、TCP/IP、Visual C++、通信
目 录
摘要……………………………………………………………………………......…………….Ⅱ
1 绪论…………………………………………………………………………………………...1
1.1 课题的背景…………………………………………………………………….……....1
1.2 即时通信系统应用现状……………………………………………………….............2
1.3 软件开发设计思想和系统功能 ………………………………...........………………5
2 即时通信系统的技术背景…………….......……………………………………………...6
2.1 即时通信系统结构模型……………....……………………………………….……….6
2.2 即时通信系统通信协议选择……………………………………………...…………10
2.2.4 总结……………………...........................…..............………………………...12
3 Visual C++的网络编程……..........……………………………………………………..13
3.1 Windows Socket 简介…………………………………………......…………………13
3.2 Socket( 套接字)简介…………………………………………………………….…13
3.3 基于TCP(面向连接)的Socket编程…....……………………………….……….14
3.4 MFC对Socket的支持…....………………............................……………….………16
3.4.1 MFC简介……….....................………………………………………....……..16
3.4.2 总结…………................………………………………………………………19
4 即时通讯系统的设计和实现..............................................................................20
4.1 即时通讯系统主要实现的功能和不足…………………………...………………...20
4.2 即时通信系统具体实现…………………………………………………………..…21
4.3 系统的编译…....……………….............................................……………….………44
4.4 总结…....……………….........................................................……………….………45
5 总结…………………………………........……………...................................................…46
致谢………….......………………………........……………...................................................…47
参考文献…….......………………………........……………..................................................…48