Стек TCP/IP
Стек TCP/IP – это набор иерархически упорядоченных сетевых
протоколов. Название стек получил по двум важнейшим протоколам – TCP
(Transmission Control Protocol) и IP (Internet Protocol). Помимо них в стек входят
ещё несколько десятков различных протоколов. В настоящее время протоколы
TCP/IP являются основными для Интернета, а также для большинства
корпоративных и локальных сетей.
В операционной системе Microsoft Windows Server 2003 стек TCP/IP
выбран в качестве основного, хотя поддерживаются и другие протоколы
(например, стек IPX/SPX, протокол NetBIOS).
Стек протоколов TCP/IP обладает двумя важными свойствами:
• платформонезависимостью, т. е. возможна его реализация на самых
разных операционных системах и процессорах;
• открытостью, т. е. стандарты, по которым строится стек TCP/IP,
доступны любому желающему.
Протоколы прикладного уровня TCP/IP
Прикладной FTP TELNET SMTP TFTP DNS Сужба времени Эхо
уровень
Протокол FTP
Протокол FTP (File Transfer Protocol - протокол передачи файлов) распространен также широко как TELNET. Он является одним из старейших протоколов семейства TCP/IP. Также как TELNET он пользуется транспорт- ными услугами TCP. Существует множество реализаций для различных опера- ционных систем, которые хорошо взаимодействуют между собой. Пользователь FTP может вызывать несколько команд, которые позволяют ему посмотреть каталог удаленной машины, перейти из одного каталога в другой, а также скопировать один или несколько файлов.
Протокол SMTP
Протокол SMTP (Simple Mail Transfer Protocol - простой протокол передачи почты) поддерживает передачу сообщений (электронной почты) между произвольными узлами сети internet. Имея механизмы промежуточного хране- ния почты и механизмы повышения надежности доставки, протокол SMTP допус- кает использование различных транспотных служб. Он может работать даже в сетях, не использующих протоколы семейства TCP/IP. Протокол SMTP обеспе- чивает как группирование сообщений в адрес одного получателя, так и разм- ножение нескольких копий сообщения для передачи в разные адреса. Над модулем SMTP располагается почтовая служба конкретных вычислительных сис- тем.
Подведем итог, сокет – это комбинация IP-адреса и порта. Сокет адрес надает возможность другим компьютерам в сети находить определенную программу, которая исполняется на определенном компьютере. Вы можете отображать сокет адрес вот так 64.104.137.58:80, где 64.104.137.58 – IP-адрес и 80 – порт.
Как программировать с использованием сокетов?
Достаточно о теории, давайте перейдем к действиям. Разработаем очень простой и наглядный код на Java, который продемонстрирует возможности использования сокетов. Попробуем реализовать следующий список действий:
1) Одна Джава программа будет пытаться связаться с другой Java программой (которая отчаянно ждет кого-то, чтоб с ней связался). Назовем первую программу Клиентом, а вторую Сервером.
2) После успешного связывания с сервером, клиент ждет ввода данных от вас и отсылает текст серверу.
3) Серверная программа отсылает клиенту назад тот ;t текст (для того чтоб показать, что она умеет делать даже такое полезное действие).
4) Полученный от сервера текст, клиент показывает вам, чтоб показать вам мнение сервера о вас. Приготовились приступить к разработке? Начнем. Отмечу только, что я не буду учить вас программированию на Java с чистого листа, а только объясню код, который относится к сокетам. Создайте 2 новых Джава программы и назовите их Server.java и Client.java. Я привел код ниже, только не пугайтесь, я все объясню.