我写了this (quickly drafted and not finished) specification,这基本上解释了我如何在c中编写基于Web的协议。我不确定如何开始写作。我认为我应该开始编写tcp套接字连接,但我不确定。
答案 0 :(得分:1)
我会假设你是C的初学者。这是你需要做的事情清单:
专门学习C,C套接字: 1)这是一个开始研究C插座的难以置信的地方。 http://beej.us/guide/bgnet/它还教授基本的客户端服务器关系并包含示例代码。 2)学习MP3标准,这是一个很好的起点http://en.wikipedia.org/wiki/Mp3 3)同时查看id3标签,这是mp3音频文件的常见元标签。 id3.org应该是寻找它的地方。
还要记住,用C编码并不容易,你需要非常小心,不要搞砸。
答案 1 :(得分:1)
顺便说一句,FTP使用TCP。所以,如果你有兴趣建立另一个FTP协议,那么你应该坚持使用TCP。否则,您最终会在应用程序级别进行簿记和重新传输。
此外,为了扩展,您当然应该探索向协议服务器添加select()调用。这样,服务器不仅可以等待传入的文件请求,还可以继续服务现有的文件请求。并且,如果您想将其扩展为非常大的数字,您还应该使用多个线程(C的POSIX线程)来设计它。