2010-07-21 4 views
2

Привет всем гуру сетевого программирования. Я чувствую желание написать собственную систему видеочата на основе протокола RTMP. Конечно, я немного знаю C, но еще не знаю, что такое сетевое программирование, я просто изучаю его. И я хотел бы спросить, где именно я должен «копать», как разработать мою программу (для * nix), чтобы заставить ее обрабатывать множество соединений. И я хотел бы знать, сколько времени мне понадобится, чтобы реализовать такую ​​программу? Я знаю, может быть, это глупый вопрос, но я хочу знать о других опытах программистов: сколько времени они потратили на то, чтобы стать хорошим сетевым программистом или написать что-то подобное. Любая помощь будет принята с благодарностью.Программирование видеочата

ответ

1

Вот три вещи, которые нужно прочитать о:

  • Розетки (мужчина гнездо)
  • select -command (мужчина) выберите
  • протокол RTMP. (Википедия, похоже, говорит о трех вариациях)

Кроме того, вам необходимо знать некоторые детали видеочата. Но это хорошие отправные точки.

В Google можно найти несколько дополнительных примеров программирования сокетов. Хотя, может быть, лучше всего вы по очереди по очереди.

Сначала сделайте серверное приложение, как это:

sock = socket(AF_INET, SOCK_STREAM) 
sock.bind((hostname, port)) 
sock.listen(5) 
client, address = sock.accept() 
while(true){ 
    print client.recv(4096) 
} 

и клиентское приложение, как это:

sock = socket(AF_INET, SOCK_STREAM) 
sock.connect((hostname, port)) 
client.send("just some text to show out\n") 

читать документацию select, recv и send тщательно через перед использованием !!!

-1

ОК, я буду учитывать это. Я прошел через некоторые форумы и увидел там дискуссии об использовании вилки или потока для Unix-серверов. Так что лучше (для исполнения) использовать по вашему мнению?

+0

Это должен быть комментарий к другому ответу, а не его собственный ответ. –