基于linux的socket编程的聊天室设计

基于linux的socket编程的聊天室设计

ID:6634275

大小:214.62 KB

页数:20页

时间:2018-01-20

基于linux的socket编程的聊天室设计_第1页
基于linux的socket编程的聊天室设计_第2页
基于linux的socket编程的聊天室设计_第3页
基于linux的socket编程的聊天室设计_第4页
基于linux的socket编程的聊天室设计_第5页
资源描述:

《基于linux的socket编程的聊天室设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、LINUX课程设计基于Linux的socket编程的聊天室设计专业:计算机科学与技术班级:姓名:学号:指导老师:郭玉华2020一、实验目的基于Socket套接口,实现聊天程序的设计与实现,增强程序编写能力,了解基于socket的程序设计方法,加深对计算机网络通信的理解。另外,通过课程设计培养自己严谨的科学态度,认真的工作作风、团队协作精神、自主设计和独力思考的能力。二、实验原理实验中,客户应用程序向服务器程序请求服务。服务进程一直处于休眠状态,直到一个客户向这个服务的地址提出了连接请求。在这个时刻,服务程序被"惊醒"并且为客户提供服务-对客户的请求作出适当的反应。 客户端部分:

2、 1.手动输入服务器端IP地址和端口号进行连接2.发送消息给服务器端并显示服务器端回传的消息3.监控连接状态,客户离开或故障时从列表中删除相应表项,并及时更新连接表。服务器端部分: 201.手动建立服务器端与客户端的连接请求2.把用户输入的信息及时发送到服务端,同时准备好接受,并显示信息。3.在用户退出时关闭连接并保存聊天记录。客户端-服务器端架构:20相关函数:socket()函数:intsocket(intfamily,inttype,intproto);1)family指定protocolfamily(PF_INET对应TCP/IP).2)type指定服务类型(SOCK_

3、STREAM,SOCK_DGRAM).3)protocol指定协议(通常0,代表缺省值).bind()函数:给socket绑定一个地址.intbind(intsockfd,conststructsockaddr*myaddr,socklen_taddrlen);bind返回值20listen()函数:accept()函数:intaccept(intsockfd,structsockaddr*cliaddr,socklen_t*addrlen);sockfd是被动模式的TCPsocket.cliaddr指针,指向一个已分配好的空间.返回客户地址.addrlen是一个value-r

4、esult参数必须设置为cliaddr的空间大小20返回时,将被设置为使用cliaddr的空间大小.。LINUX简介:Linux操作系统是UNIX操作系统的一种克隆系统。它诞生于1991年的10月5日。由于Linux是开源和免费的,得到了广大计算机爱好者全力支持,现已成为今天世界上使用最多的一种UNIX类操作系统。其具有的特点有:开放性:指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。多用户:是指系统资源可以被不同用户使用,每个用户对自己的资源(例如:文件、设备)有特定的权限,互不影响。多任务:它是指计算机同时执行多个程序,而且各个程序的运行互相独立。良好的用

5、户界面:Linux向用户提供了两种界面,用户界面和系统调用。Linux还为用户提供了图形用户界面,它利用鼠标、菜单、窗口、滚动条等设施,给用户呈现一个直观、易操作、交互性强的友好图形化界面。设备独立性:是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以像使用文件一样,操纵、使用这些设备,而不必知道它们的具体存在形式。Linux是具有设备独立性的操作系统,它的内核具有高度适应能力,提供了丰富的网络功能,完善的内置网络是Linux一大特点。安全性:Linux采取了许多安全技术措施,包括对读、写控制、带保护的子系统、审计跟踪、核心授权等,这为网络多

6、用户环境中的用户提供了必要的安全保障。良好的可移植性:是指将操作系统从一个平台转移到另一个平台,它仍然能按其自身的方式运行的能力。Linux是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。20TCP简介:TCP与UDP同为传输层协议。本系统采用的传输协议TCP协议。TCP协议提供的是可靠的、面向连接的传输控制协议,即在传输数据前要先建立逻辑连接,然后再传输数据,最后释放连接3个过程。TCP提供端到端、全双工通信;采用字节流方式,如果字节流太长,将其分段;提供紧急数据传送功能。TCP协议主要特点:1、面向连接的传输;2、端到端的通信;3、高可靠

7、性,确保传输数据的正确性,不出现丢失或乱序;4、全双工方式传输;5、采用字节流方式,即以字节为单位传输字节序列;6、紧急数据传送功能;一、实验实现//--------------------------------server.c--------------------------------------------------//包含工程所需的头文件#include#include#include#include

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。