Страница 82

Вычислительные комплексы и сети. Лекции

Главная
Страница 1
Страница 2
Страница 3
Страница 4
Страница 5
Страница 6
Страница 7
Страница 8
Страница 9
Страница 10
Страница 11
Страница 12
Страница 13
Страница 14
Страница 15
Страница 16
Страница 17
Страница 18
Страница 19
Страница 20
Страница 21
Страница 22
Страница 23
Страница 24
Страница 25
Страница 26
Страница 27
Страница 28
Страница 29
Страница 30
Страница 31
Страница 32
Страница 33
Страница 34
Страница 35
Страница 36
Страница 37
Страница 38
Страница 39
Страница 40
Страница 41
Страница 42
Страница 43
Страница 44
Страница 45
Страница 46
Страница 47
Страница 48
Страница 49
Страница 50
Страница 51
Страница 52
Страница 53
Страница 54
Страница 55
Страница 56
Страница 57
Страница 58
Страница 59
Страница 60
Страница 61
Страница 62
Страница 63
Страница 64
Страница 65
Страница 66
Страница 67
Страница 68
Страница 69
Страница 70
Страница 71
Страница 72
Страница 73
Страница 74
Страница 75
Страница 76
Страница 77
Страница 78
Страница 79
Страница 80
Страница 81
Страница 82
Страница 83
Страница 84






Скачать учебник
Предыдущая страница
Следующая страница

Ответ короткий, пользуясь записями лекций. Коротко и ясно.

 

Литература: Танендаум и Олиффер.

 

Установка TCP соединения

В TCP соединение устанавливается с помощью тройного рукопожатия. Каждый выполняет примитив listen и accept. Примитив connect посылает TCP сегмент с SYN = 1, ACK = 0 и ждет ответа. TCP сущность получателя проверяет выполняется ли у кого-нибудь примитив listen с тем же номером порта, если нет – RST = 1, отказ от соединения, если есть входной TCP сегмент он передается процессу, связанному с этим портом, последний может принять соединение или отказаться от него. Если принимает, выдается подтверждение, соединение установлено.

Разрыв соединения

Каждое соединение представляется двумя симплексными соединениями. Каждое симплексное соединение разрывается самостоятельно: посылается сегмент с FIN = 1, после получения подтверждения соединение разрывается. Данные могут передаваться, пока не закрыто соединение в оба конца. Для полного закрытия требуется 2 сегмента с FIN = 1 и 2 сегмента с ACK = 1 (подтверждение). Чтобы избежать проблемы 2 армий используется таймеры.

Управление TCP соединением и передачей

После установления соединения TCP сущность переключается в состояние ESTABLED, может получать и передавать данные. Передача осуществляется с помощью примитивов send и receive. Управление передачей заключается в синхронизации освободившегося буфера приемника и посылкой следующей порции данных. Как правило, используется переменный размер скользящего окна, а также задержки подтверждений с целью рассасывания принятых данных в буфере. Имеется возможность передавать размер скользящего окна получателю или наоборот отправителю соответствующий свободному месту в буфере у приемника.

Борьба с перегрузкой

Идея: не передавать пакеты пока не получен ответ. Основные решаемые задачи:

  • Обнаружение перегрузки. В TCP считается, что потеря пакетов «отсутствие подтверждений» вызваны не помехой а перегрузкой сети. Оповещение о перегрузке сигнализируется тайм-аутами подтверждений.
  • Борьба с перегрузкой: выбор подходящего размера окна. Первоначально устанавливается размер скользящего окна в то значение, которое может привести к перегрузке, данные передаются, и если интервалы ожидания подтверждений не превышаются, размер окна увеличивается. Когда таймеры срабатывают, размер окна уменьшается.
Управление таймерами.
Предыдущая страница
Следующая страница
Hosted by uCoz