Страница 1 из 1
Путь...
Добавлено: 2011-06-06 12:09:48
Scomp
Простите за "глупый" вопрос но все же... Есть тут люди которые смогут описать досконально передачу информации допустим даже по сети из двух компьютеров (неважно какая операционка ну и TCP/IP конечн).
Надо из
"Мэн захотел по хттп че-нибудь взять. Состряпал хттп запрос. Отдал запрос операционке. Та его в пакет. Потом глянула через какой иф кинуть его. Отдала пакет драйверу ифа. Драйвер его на кадры разбил. Одал сетевухе. Та его закодила по юзеру и плюнулу сигналами в кабель."
сделать конфету и продолжить на стороне второго компьютера на котором допустим стоит apache.. Я не говорю про банальное копирование инфы с вики о OSI... А о ->->доскональном<-<- описании процесса передачи с "Состряпал хттп запрос" до "Апачама приняла твой коммент" ...
Re: Путь...
Добавлено: 2011-06-06 14:36:14
manefesto
ктобы знал брат.
Re: Путь...
Добавлено: 2011-06-06 18:20:42
ADRE
Компьтерные сети 3е издание Питер
Re: Путь...
Добавлено: 2011-06-07 9:40:14
Scomp
ну емаё) может быть кто-нибудь нормальным русским языком (особо не умничая) опишет тут раз и навсегда и для всех (думаю желающих не мало) данный процесс)
п. с. спс ADRE. Почитаю..
Re: Путь...
Добавлено: 2011-06-07 10:25:24
Scomp
Действительно есть пример на 614 стр. Олиферов.. но не подробный.. остается много вопросов.. как обрабатывают информацию модули IP, ARP и тд. (подробно), как между собой связанны и как себя ведут ARP, драйвер сетевой карточки и сама сетевая карточка при передачи информации?.. и тд. и т.п. там нет систематизации..
Re: Путь...
Добавлено: 2011-06-07 10:56:22
schizoid
наверна автор сам не особопонимает

Re: Путь...
Добавлено: 2011-06-07 11:13:36
rmn
То, что ты просишь - это с пару десятков rfc по протоколам. Описание сетевого API системы. Описание сетевой подсистемы ядра. Плюс описание аппаратной части.
Ответом на такой вопрос будет книга страниц на 1к
если обобщенно и абстрактно, то:
Код: Выделить всё
1. пользовательское приложение формирует данные и передает указатель на них и размер в send().
2. данные «спускаются» по сетевому стеку, на каждом уровне которого в начале данных добавляется соответствующий заголовок. Заголовок формируется на основании свойств сокета и/или предыдущих заголовков.
для HTTP:
3. (TCP-уровень). Данные разбиваются на последовательно пронумерованные сегменты, к каждому из которых добавляется TCP-заголовок, в котором указываются номер сегмента, флаги, контрольная сумма и номера портов (из свойств сокета). Далее каждый сегмент «опускается» на уровень IP.
4. (IP-уровень). К данным добавляется заголовок IP, в котором указываются флаги, контрольная сумма и адреса источника и приемника (из свойств сокета).
5. (Ethernet-уровень). Читается таблица маршрутизации, чтобы определить MAC-адрес интерфейса, через который доступна сеть приемника:
5.1 Источник и приемник находятся в одной сети. Читается arp-таблица, чтобы определить MAC-адрес приемника; если запись в таблице отсутсвует, отправляется arp-запрос на получение MAC-адреса приемника.
5.2 Источник и приемник находятся в разных сетях. Читается arp-таблица, чтобы определить MAC-адрес шлюза, через который доступна сеть приемника; если запись в таблице отсутсвует, отправляется arp-запрос на получение MAC-адреса шлюза.
6. К данным добавляется Ethernet-заголовок. MAC-адрес приемника берется из предыдущих этапов. В качестве MAC-адреса источника подставляется адрес исходящего интерфейса.
7. Сетевая карта источника — Среда передачи — Сетевая карта приемника или шлюза.
8. С пакета снимается Ethernet-заголовок. Если адрес приемника не является адресом текущего хоста — переход к пункту 5.
9. Пакет «поднимается» по сетевому стеку, на каждом уровне которого с него снимается соответствующий заголовок, TCP-сегменты собираются, в соответствии с нумерацией и определяется сокет, в который передать данные.
11. Указатель на данные и их размер возвращается в пользовательское приложение при вызове recv().
12. пользовательское приложение обрабатывает данные (запрос), формирует ответ и переходит к пункту 1.
и по каждому пункту можешь задавать вопросы, читать описание протоколов, формат заголовков и как они заполняются в rfc, вики, книгах, etc.
Re: Путь...
Добавлено: 2011-06-07 11:38:06
Scomp
Ну наверно не на 1к.. Но большая, согласен, и её такой нету и она мне не нужна) Нужен пример передачи.. подробный.. всеже спасибо за абстракцию rmn.. будем копать дальше...