没有合适的资源?快使用搜索试试~ 我知道了~
聊天工具服务器的实现课程设计报告
需积分: 10 8 下载量 120 浏览量
2011-06-25
12:21:18
上传
评论 1
收藏 127KB DOC 举报
温馨提示
试读
16页
一、课程设计目的 (一)聊天工具服务器端实现的目的 1.加深对TCP/IP协议的理解; 2.掌握用Socket编程实现聊天工具。 (二)聊天工具客户端实现的目的 1.加深对TCP/IP协议的理解; 2.掌握用Socket编程实现聊天工具。
资源推荐
资源详情
资源评论
《聊天工具服务器的实现》
课程设计报告
姓 名:
学 号:
班 级:
专 业:
指导教师:
时 间:
目 录
1 课程设计目的 …………………………………………………… 1
2 ………………………………………………………………页码
(要求:给出一级目录,宋体加粗,四号字,1.5 倍行距。)
一、课程设计目的
(一)聊天工具服务器端实现的目的
1.加深对 TCP/IP 协议的理解;
2.掌握用 Socket 编程实现聊天工具。
(二)聊天工具客户端实现的目的
1.加深对 TCP/IP 协议的理解;
2.掌握用 Socket 编程实现聊天工具。
二、课程设计题目描述和要求
(一)聊天工具服务器端实现的要求和描述
要求:
1.使用 Socket 编程实现聊天工具服务器端;
2.撰写课程设计报告。
设计原理描述:
一、Windows Socket 和套接口的基本概念
套接口,就是一个指向传输提供者的句柄。Win32 中,套接口不同于文件
描述符,所以它是一个独立的类型——SOCKET。Windows Sockets 描述定
义了一个 Microsoft Windows 的网络编程界面,它是从 Unix Socket 的基础
上发展而来的,为 Windows TCP/IP 提供了一个 BSD 型的套接字规范,除与
4.3BSD Unix Sockets 完全兼容外,还包括一个扩充文件,通过一组附加的 A
PI 实现 Windows 式(即事件驱动)的编程风格;而 Winsock 则是在 Microsoft
Windows 中进行网络应用程序设计的接口。Windows 在 Internet 支配域中
的 TCP/IP 协议定义了 Winsock 网络编程规范,融入了许多新特点。使用
Socket 的目的是使用户在网络协议上工作而不必对该网络协议有非常深入的了
解。此外,编写的程序还可被迅速地移植到任何支持 Socket 的网络系统中去。
Winsock 提供了一种可为指定传输协议打开、计算和关闭会话的能力。在
Windows 下,TCP/IP 上层模型在很大程度上与用户的 Winsock 应用有关;换
言之,用户的 Winsock 应用控制了会话的方方面面,必要时,还会根据程序的
需要格式化数据。
套接口有三种类型:流式套接口、数据报套接口及原始套接口。
流式套接口定义了一种可靠的面向连接的服务(利用 TCP 协议),实现了
无差错无重复的顺序数据传输。数据报套接口定义了一种无连接的服务(UDP
协议),数据通过相互独立的报文进行传输,是无序的,并且不保证可靠和无
差错。原始套接口允许对低层协议如 IP 或 ICMP 直接访问,主要用于新的网络
协议实现的测试等。
套接口工作过程如下:服务器首先启动,通过调用 socket()建立一个套接
口,然后调用 bind()将该套接口和本地网络地址联系在一起,再调用 listen()
使套接口做好侦听的准备,并规定它的请求队列的长度,之后,调用 accept()
来接收连接。客户在建立套接口后就可调用 connect()和服务器建立连接。连
接一旦建立,客户机和服务器之间就可以通过调用 read()和 write()来发送和
接收数据。最后,待数据传送结束后,双方调用 close()关闭套接口。
在网络编程中,掌握端口的概念十分重要。端口:基于 TCP/IP 协议的网络
中,计算机都分配有一个 IP 地址,用一个 32 位二进制数来表示,正式的称呼
是“Ipv4 地址”。客户机需要通过 TCP 或 UDP 和服务器通信时,必须指定服务
器的 IP 地址和服务端口号。另外,服务器打算侦听接入客户机请求时,也必须
指定图 1.2 一个 IP 地址和一个端口号。在选择端口时,应特别小心,因为有些
可用端口号是为“已知的”(即固定的)服务保留的,如文件传输协议和超文本
传输协议,即 FTP(21 号端口)和 HTTP(一般为 8080 端口)。“已知的协
议”,即固定协议,采用的端口由“互联网编号分配认证(IANA)”控制和分配 ,
RFC1700 中说明的编号。
从本质上说,端口号可分成 3 类:“已知”端口、已注册端口、动态和
(或)私用端口。
“⑴ 已知”端口 0~1023,由 IANA 控制,是在 UNIX 中为固定服务保留的。
⑵ 已注册的端口 1024~49151,由 IANA 列出来的,供普通用户的普通
用户进程或程序使用。
⑶ 动态和(或)私用端口 49152~65535。普通用户应用应选择
1024~49151 之间的已注册端口,从而避免端口号已被另一个应用或系统服
务所用。此外,49152~65535 间的端口可自由使用,因为 IANA 这些端口上
剩余15页未读,继续阅读
资源评论
hyang0814
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功