Добавить в цитаты Настройки чтения

Страница 93 из 399

struct sctp_status {

 sctp_assoc_t sstat_assoc_id;

 int32_t sstat_state;

 u_int32_t sstat_rwnd;

 u_int16_t sstat_unackdata;

 u_int16_t sstat_penddata;

 u_int16_t sstat_instrms;

 u_int16_t sstat_outstrms;

 u_int32_t sstat_fragmentation_point;

 struct sctp_paddrinfo sstat_primary;

};

Поля структуры имеют следующий смысл:

■ sstat_assoc_id содержит идентификатор ассоциации;

■ sstat_state содержит константу, обозначающую состояние ассоциации (табл. 7.8). Подробное описание состояний конечной точки SCTP, чередующихся при установке и завершении ассоциации, приводится на рис. 2.8;

■ sstat_rwnd содержит текущее вычисленное значение приемного окна собеседника;

■ sstat_unackdata содержит количество неподтвержденных порций данных, ждущих ответа собеседника;

■ sstat_penddata содержит количество непрочитанных порций данных, подготовленных локальной конечной точкой SCTP для приложения;

■ sstat_instrms содержит количество потоков, используемых собеседником для передачи данных на данную конечную точку;

■ sstat_outstrms содержит количество потоков, по которым данная конечная точка может передавать данные собеседнику;

■ sstat_fragmentation_point содержит текущее значение границы фрагментации пользовательских сообщений, используемое локальной конечной точкой SCTP. Это значение обычно равняется минимальной MTU для всех адресатов или еще меньшей величине, установленной при помощи параметра SCTP_MAXSEG;

■ sstat_primary содержит текущий основной адрес. Основной адрес используется по умолчанию для отправки данных собеседнику.

Таблица 7.8. Состояния SCTP