В первые дни я "гуглил" в поисках подробного руководства / руководства о том, как работает TCP / IP; специально поток данных; Например, что происходит, когда я набираю « http://superuser.com » в веб-браузере, и он получает домашнюю страницу superuser.com?
Результаты поиска, которые я основал, не работают для меня; потому что не полностью отвечу на мой вопрос.
Я нашел эти веб-страницы интересными:
Кроме того, я нашел отличные диаграммы EventHelix:
Следуя приведенным выше примерам, я думаю, что TCP/IP работает следующим образом:
- Веб-браузер возьмет URL (http://superuser.com), правильно подготовит HTTP-сообщение (возможно, запрос GET). Веб-браузер должен знать IP-адрес superuser.com, поэтому запрашивайте DNS через UDP, чтобы преобразовать superuser.com в IP-адрес. Если DNS-кеш обнаружил IP-адрес superuser.com, отправьте ответ, в противном случае ищите авторитетный перевод. Наконец, браузер доставляет это сообщение плюс IP-адрес назначения на уровень TCP.
- TCP получает сообщение, решает, нужен ли фрагмент, подготавливает заголовки TCP и отправляет сегменты на уровень IP.
- Сегменты приема IP, проверьте, является ли IP-адрес назначения поисковой сетью, локальной или удаленной сетью, запросите таблицу маршрутизации для получения IP-адреса шлюза, используйте ARP, чтобы найти MAC-адрес IP-адреса шлюза, при необходимости фрагментируйте сегменты, подготовьте заголовки IP и отправьте пакеты на канальный уровень.
- И так далее...
Вышесказанное далеко от того, чтобы быть полным и правильным.
Где я могу найти дополнительную и полную информацию о том, как работает поток данных TCP/IP? Любая помощь будет оценена.