VirtualIreland.ru - Виртуальная Ирландия
Вернуться   VirtualIreland.ru - Виртуальная Ирландия > Живем в Ирландии > IT и Связь

IT и Связь Обсуждение "айтишных" вопросов и средств связи

 
 
Опции темы Опции просмотра
Старый 03.04.2009, 19:28   #17
Practical UNIX Terrorist
 
Аватар для rojer
 
Откуда: bray.ie<-dub.ie<-msk.ru<-ykt.ru
Сообщений: 2,291
Благодарности: 1,257 в 647 сообщениях Поиск благодарностей rojer
По умолчанию Re: pipe in bash

Troll> это чисто локальная операция, с другой стороны tcp-соединения этого вообще не видно

насколько я понимаю, на shutdown посылается fin и соединение переходит в half-open режим. при этом передача в другую сторону возможна ещё сколь угодно долго, но при попытке чтения другая сторона будет получать 0. вопрос, не смущает ли это сквид?

Troll> убунта 8.10 с последними апдейтами

ну вот, редхат перешёл на новый опенбсдшный, а дебиан и, как следствие, убунта - нет. в том и разница, стало быть.

upd: подампал - так и есть. вот смесь вывод tcpdump и strace:

read(0, "GET cache_object://127.0.0.1/inf"..., 1024) = 47
write(3, "GET cache_object://127.0.0.1/inf"..., 4723:30:36.083853 IP 10.0.0.1.57253 > 10.0.0.2.8079: P 1:48(47) ack 1 win 46 <nop,nop,timestamp 3394157776 85347431>
0x0000: 4500 0063 c188 4000 4006 6adf 596f aabc E..c..@.@.j.Yo..
0x0010: 0a00 0002 dfa5 1f8f 2ea0 7d4a 35d1 da69 ..........}J5..i
0x0020: 8018 002e 0e83 0000 0101 080a ca4e bcd0 .............N..
0x0030: 0516 4c67 4745 5420 6361 6368 655f 6f62 ..LgGET.cache_ob
0x0040: 6a65 6374 3a2f 2f31 3237 2e30 2e30 2e31 ject://127.0.0.1
0x0050: 2f69 6e66 6f20 4854 5450 2f31 2e30 0d0a /info.HTTP/1.0..
0x0060: 0d0a 0a ...
) = 47
poll([{fd=3, events=POLLIN}, {fd=0, events=POLLIN, revents=POLLHUP}], 2, -1) = 1
shutdown(3, 1 /* send */23:30:36.084091 IP 10.0.0.1.57253 > 10.0.0.2.8079: F 48:48(0) ack 1 win 46 <nop,nop,timestamp 3394157776 85347431>
0x0000: 4500 0034 c189 4000 4006 6b0d 596f aabc E..4..@.@.k.Yo..
0x0010: 0a00 0002 dfa5 1f8f 2ea0 7d79 35d1 da69 ..........}y5..i
0x0020: 8011 002e d43a 0000 0101 080a ca4e bcd0 .....:.......N..
0x0030: 0516 4c67 ..Lg
) = 0

обрати внимание на FIN после shutdown(3, SHUT_WR). после этого назад приходит нормальный ответ, потом FIN и последний от нас ACK.
правда, на lo у меня этого не происходит - там большой MTU и весь ответ сервера помещается в первый же пакет, за которым сразу следует FIN. но теория такова

upd2: если опустить mtu на lo до 1500, то этот fin разглядеть удётся. в общем, маловероятно, но всё же. хочется увидеть алексов tcpdump, что конкретно у него происходит.
__________________
Even if a billion people believe something it can still be ridiculous.

Последний раз редактировалось rojer, 03.04.2009 в 19:41.
rojer вне форума   Ответить с цитированием
 



Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать на сообщения
Вы не можете добавлять вложения
Вы не можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщ.
bash history AlexM IT и Связь 14 27.11.2006 18:56
bash.org Mikhael Само приползло 2 02.04.2006 22:35


Часовой пояс GMT, времени сейчас: 18:49.


vBulletin®, Copyright ©2000-2025, Jelsoft Enterprises Ltd., Русификация: zCarot, Vovan & Co
©2003-2025 VirtualIreland.ru - Виртуальная Ирландия