ПРЕДОСТАВЛЕНИЕ ВОЗМОЖНОСТИ СЕТЕВЫМ УСТРОЙСТВАМ ВЫПОЛНЯТЬ НЕСКОЛЬКО АЛГОРИТМОВ УПРАВЛЕНИЯ ПЕРЕГРУЖЕННОСТЬЮ

1. Система для создания модуля управления перегруженностью для управления перегруженностью по сетевому соединению, содержащая
интерфейс прикладного программирования, раскрывающий одну или более абстракций событий для использования при определении типов модулей управления перегруженностью, из которых могут быть сформированы модули управления перегруженностью, причем каждая абстракция события определяет событие управления транспортировкой.
2. Система по п.1, в которой интерфейс прикладного программирования раскрывает одну или более абстракций информации, каждая из которых определяет информацию для обработки событий, определенных посредством абстракций событий.
3. Система по п.1, в которой интерфейс прикладного программирования раскрывает одну или более абстракций алгоритма управления перегруженностью, каждая из которых определяет алгоритм управления перегруженностью для управления перегруженностью по сетевому соединению.
4. Система по п.1, в которой интерфейс прикладного программирования предоставляется посредством операционной системы сетевого устройства.
5. Система по п.1, в которой каждая абстракция события определяет два или более следующих события: таймаут на повторную передачу по соединению; изменения времени на передачу и подтверждение приема; подтверждение приема новых данных; прием дублированного подтверждения приема; и отправка нового пакета данных.
6. Система управления перегруженностью по одному или более сетевых соединений между сетевым устройством и сетью передачи данных, содержащая
стек сетевой передачи данных, выполненный с возможностью управлять сетевой передачей данных по одному или более соединений; и
один или более модулей управления перегруженностью, причем каждый модуль управления перегруженностью определяет алгоритм управления перегруженностью, чтобы управлять перегруженностью по соответствующему из одного или более сетевых соединений, и поддерживает одну или более переменных состояния соединения для соответствующего соединения,
при этом стек сетевой передачи данных выполнен с возможностью для каждого одного или более соединений оповещать модуль управления перегруженностью, который управляет перегруженностью по соединению, об одном или более событий управления транспортировкой, которые возникают в соединении.
7. Система по п.6, в которой каждый модуль управления перегруженностью выполнен с возможностью обновлять одну или более переменных состояния соединения в ответ на оповещение о событии управления транспортировкой, которое возникло в соединении, для которого модуль управления перегруженностью управляет перегруженностью.
8. Система по п.7, в которой каждый модуль управления перегруженностью выполнен с возможностью оповещать стек сетевой передачи данных об обновленных одной или более переменных состояния соединения по соединению, для которого модуль управления перегруженностью управляет перегруженностью.
9. Система по п.8, в которой стек сетевой передачи данных выполнен с возможностью управлять сетевой передачей данных по одному или более соединений на основе обновленных одной или более переменных состояния соединения, которые он принимает от одного или более модулей управления перегруженностью.
10. Система по п.6, дополнительно содержащая
множество абстракций модулей управления перегруженностью, причем каждая абстракция модуля управления перегруженностью определяет тип модуля управления перегруженностью,
в которой стек сетевой передачи данных выполнен с возможностью выбирать первую из множества абстракций модуля управления перегруженностью для первого из одного или более соединений и создавать первый из одного или более модулей управления перегруженностью из первой абстракции модуля управления перегруженностью.
11. Система по п.10, в которой стек сетевой передачи данных выполнен с возможностью выбирать первую из множества абстракций модуля управления перегруженностью для второго из одного или более соединений и создавать второй из одного или более модулей управления перегруженностью из первой абстракции модуля управления перегруженностью.
12. Система по п.6, в которой стеком сетевой передачи данных является стек TCP/IP.
13. Компьютерный программный продукт, содержащий
по меньшей мере, один машиночитаемый носитель; и
машиночитаемые сигналы, сохраненные на машиночитаемом носителе, которые задают инструкции, которые в результате исполнения компьютером управляют компьютером так, чтобы осуществлять способ управления перегруженностью по сетевому соединению между сетевым устройством и сетью передачи данных, при этом способ содержит этапы, на которых
(A) выбирают первый тип управления перегруженностью для первого соединения;
(B) формируют первый модуль управления перегруженностью первого типа; и
(C) управляют перегруженностью сети по первому соединению с помощью первого модуля управления перегруженностью.
14. Компьютерный программный продукт по п.13, в котором сетевое устройство имеет доступ к множеству абстракций модулей управления перегруженностью, причем каждая абстракция модуля управления перегруженностью определяет тип модуля управления перегруженностью,
при этом этап (A) содержит этап, на котором выбирают первую из множества абстракций модуля управления перегруженностью, при этом первая абстракция модуля управления перегруженностью определяет первый тип модуля управления перегруженностью, и
при этом этап (B) содержит этап, на котором формируют первый модуль управления перегруженностью с помощью первой абстракции модуля управления перегруженностью.
15. Компьютерный программный продукт по п.13, в котором способ дополнительно содержит этапы, на которых
(D) выбирают первый тип управления перегруженностью для второго соединения;
(E) формируют второй модуль управления перегруженностью первого типа; и
(F) управляют перегруженностью сети по второму соединению с помощью второго модуля управления перегруженностью.
16. Компьютерный программный продукт по п.13, в котором способ дополнительно содержит этапы, на которых
(D) выбирают второй тип управления перегруженностью для второго соединения;
(E) формируют второй модуль управления перегруженностью второго типа; и
(F) управляют перегруженностью сети по второму соединению с помощью второго модуля управления перегруженностью,
при этом второй тип отличается от первого типа.
17. Компьютерный программный продукт по п.13, в котором этапы (A)-(C) выполняются посредством стека TCP/IP.
18. Компьютерный программный продукт по п.13, дополнительно содержащий этап, на котором
(D) оповещают первый модуль управления перегруженностью об одном или более событий управления транспортировкой, которые возникают в соединении.
19. Компьютерный программный продукт по п.18, в котором способ дополнительно содержит этап, на котором
(E) обновляют посредством первого модуля управления перегруженностью одну или более переменных состояния соединения в ответ на оповещение.
20. Компьютерный программный продукт по п.19, в котором этапы (A)-(C) выполняются посредством стека сетевой передачи данных,
при этом этап (C) содержит этап, на котором управляют сетевой передачей данных по первому соединению на основе обновленной одной или более переменных состояния соединения; и
при этом способ дополнительно содержит этап, на котором оповещают посредством первого модуля управления перегруженностью стек сетевой передачи данных об обновленных одной или более переменных состояния соединения.