СПОСОБ И УСТРОЙСТВО ДЛЯ ОБРАБОТКИ ЗАПРОСА ОПЕРАЦИИ В СИСТЕМЕ ХРАНЕНИЯ ДАННЫХ Российский патент 2017 года по МПК H04L29/08 

Описание патента на изобретение RU2630377C1

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

[0001] Настоящее изобретение относится к области техники информационных технологий и конкретно к способу и устройству для обработки запроса операции в системе хранения данных.

УРОВЕНЬ ТЕХНИКИ

[0002] В системе хранения данных сервер метаданных используется, чтобы управлять запросом операции к системе хранения данных и записывать метаданные системы хранения данных. При осуществлении доступа к системе хранения данных пользователю сначала необходимо осуществить связь с сервером метаданных, чтобы получить метаданные, требуемые запросом операции.

[0003] Чтобы гарантировать балансировку нагрузки системы хранения данных, система хранения основывается на существующей в известном уровне техники глобальной схеме балансировки распределенной нагрузки, и балансировка нагрузки системы хранения данных реализуется путем выполнения информационного взаимодействия между устройствами хранения данных. Однако является затруднительным выполнять информационное взаимодействие между устройствами хранения данных.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

[0004] Чтобы решить вышеуказанную проблему известного уровня техники, варианты осуществления настоящего изобретения обеспечивают способ и устройство, предназначенные для обработки запроса операции в системе хранения данных, и энергонезависимый читаемый компьютером носитель данных, а также способ и устройство для формирования правила пересылки элемента таблицы потоков и энергонезависимый читаемый компьютером носитель данных.

[0005] Согласно первому аспекту, вариант осуществления настоящего изобретения представляет способ для обработки запроса операции в системе хранения данных, где система хранения данных включает в себя контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора; и способ включает в себя:

прием, посредством коммутатора, запроса операции, где запрос операции несет идентификационные данные запроса, и идентификационные данные запроса включают в себя, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения;

запрос, посредством коммутатора, в соответствии с идентификационными данными запроса, таблицы потоков коммутатора, чтобы получить элемент таблицы потоков, соответствующий запросу операции; и

пересылку, посредством коммутатора, запроса операции на целевое устройство хранения данных из числа устройств хранения данных согласно правилу пересылки в соответствующем элементе таблицы потоков.

[0006] Согласно варианту осуществления первого аспекта, в первом возможном способе реализации, когда идентификационные данные запроса являются информацией о группе пользователей, бит идентификации виртуальной локальной сети в запросе операции несет информацию о группе пользователей, и бит идентификации виртуальной локальной сети в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о группе пользователей; или

когда идентификационные данные запроса являются информацией о стратегии хранения, бит типа услуги по протоколу Internet в запросе операции несет информацию о стратегии хранения, и бит типа услуги по протоколу Internet в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о стратегии хранения; или

когда идентификационные данные запроса являются информацией о группе пользователей и информацией о стратегии хранения, бит идентификации виртуальной локальной сети в запросе операции несет информацию о группе пользователей, бит типа услуги по протоколу Internet в запросе операции несет информацию о стратегии хранения, бит идентификации виртуальной локальной сети в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о группе пользователей, и бит типа услуги по протоколу Internet в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о стратегии хранения.

[0007] Согласно варианту осуществления первого аспекта, во втором возможном способе реализации, когда запрос операции является запросом чтения, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные.

[0008] Согласно второму возможному способу реализации, в третьем возможном способе реализации, способ дополнительно включает в себя:

обновление, посредством коммутатора, количества раз, которое запрос чтения пересылается на целевое устройство хранения данных, где значение количества записано в соответствующем элементе таблицы потоков.

[0009] Согласно варианту осуществления первого аспекта или первому возможному исполнению реализации вариантов осуществления первого аспекта, четвертым возможным способом реализации, когда запрос операции является запросом записи, правило пересылки для соответствующего элемента таблицы потоков формулируется контроллером согласно оставшемуся пространству памяти в устройствах хранения данных.

[0010] Согласно четвертому возможному исполнению реализации, в пятом возможном способе реализации способ дополнительно включает в себя:

обновление, посредством коммутатора, значения количества раз, которое запрос записи пересылается на целевое устройство хранения данных, где значение количества записано в соответствующий элемент таблицы потоков.

[0011] Согласно второму аспекту, вариант осуществления настоящего изобретения представляет способ для формирования правила пересылки элемента таблицы потоков, включающий в себя: способ применяется к системе хранения данных, система хранения включает в себя контроллер, коммутатор и устройство хранения данных, осуществляющее связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора; и способ включает в себя:

получение посредством контроллера информации об оставшемся пространстве памяти в устройстве хранения, осуществляющего связь с коммутатором; и

формирование посредством контроллера в соответствии с информацией пространстве памяти устройства хранения данных, правила пересылки, соответствующего запросу записи, где запрос записи используется, чтобы записывать данные в устройство хранения данных, осуществляющее связь с коммутатором.

[0012] Согласно второму аспекту, в первом возможном способе реализации, получение посредством контроллера информации об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором, конкретно включает в себя:

прием контроллером информации об оставшемся пространстве памяти, сообщаемой устройством хранения данных.

[0013] Согласно второму аспекту, во втором возможном способе реализации, получение посредством контроллера информации об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором, конкретно включает в себя:

получение посредством контроллера значения количества раз, которое запрос записи пересылается на устройство хранения данных, и размера записанных данных, где значение количества и размер записаны в элементе таблицы потоков в таблице потоков коммутатора; и

вычисление посредством контроллера оставшегося пространства памяти устройства хранения данных в соответствии с пространством памяти устройства хранения данных, значением количества выполнений запроса записи и размером записанных данных.

[0014] Согласно третьему аспекту, вариант осуществления настоящего изобретения представляет способ для формирования правила пересылки элемента таблицы потоков, включающий в себя: способ применяется к системе хранения данных, система хранения данных включает в себя контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора; и способ включает в себя:

получение, посредством контроллера, информации потоковой нагрузки устройства хранения данных, которое хранит запрошенные данные; и

формирование, посредством контроллера, согласно информации потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные, правила пересылки, соответствующего запросу чтения.

[0015] Согласно третьему аспекту, в первом возможном способе реализации, получение посредством контроллера информации потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные, конкретно включает в себя:

прием контроллером информации потоковой нагрузки, сообщаемой устройствами хранения данных, которые хранят запрошенные данные.

[0016] Согласно третьему аспекту, во втором возможном способе реализации, получение посредством контроллера информации потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные, конкретно включает в себя:

получение, посредством контроллера, значения количества раз, которое запрос операции пересылается на устройства хранения данных, которые хранят запрошенные данные, где значение количества записано в элементе таблицы потоков в таблице потоков коммутатора, и запрос операции включает в себя запрос записи и запрос чтения.

[0017] Согласно четвертому аспекту, вариант осуществления настоящего изобретения обеспечивает коммутатор, включающий в себя: коммутатор применяется к системе хранения данных, система хранения данных включает в себя контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором, и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора; и коммутатор включает в себя:

приемный блок, сконфигурированный, чтобы принимать запрос операции, где запрос операции несет идентификационные данные запроса, и идентификация запроса включает в себя, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения;

блок запроса, сконфигурированный, чтобы в соответствии с идентификационными данными запроса запрашивать таблицу потоков коммутатора для получения элемента таблицы потоков, соответствующего запросу операции; и

блок пересылки, сконфигурированный, чтобы пересылать запрос операции на целевое устройство хранения данных из числа устройств хранения данных согласно правилу пересылки в соответствующем элементе таблицы потоков.

[0018] Согласно четвертому аспекту, в первом возможном способе реализации, когда запрос операции является запросом чтения, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные.

[0019] Согласно четвертому аспекту, во втором возможном способе реализации, когда запрос операции является запросом записи, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно оставшемуся пространству памяти в устройствах хранения данных.

[0020] Согласно пятому аспекту, вариант осуществления настоящего изобретения обеспечивает контроллер, в том числе: контроллер применяется к системе хранения данных, система хранения данных включает в себя контроллер, коммутатор и устройство хранения данных, осуществляющее связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора; и контроллер включает в себя:

блок получения, сконфигурированный, чтобы получать информацию об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором; и

блок формирования, сконфигурированный, чтобы формировать в соответствии с информацией о пространстве памяти устройства хранения данных правило пересылки, соответствующее запросу записи, где запрос записи используется, чтобы записывать данные в устройство хранения данных, осуществляющее связь с коммутатором.

[0021] Согласно пятому аспекту, в первом возможном способе реализации, блок получения конкретно сконфигурирован, чтобы принимать информацию об оставшемся пространстве памяти, сообщаемую устройством хранения данных.

[0022] Согласно пятому аспекту, во втором возможном способе реализации, блок получения конкретно сконфигурирован с возможностью: получать значение количества раз, которое запрос записи пересылается на устройство хранения данных, и размер записанных данных, где значение количества и размер записаны в элемент таблицы потоков в таблице потоков коммутатора; и

контроллер вычисляет оставшееся пространство памяти устройства хранения данных в соответствии с пространством памяти устройства хранения данных, значением количества выполнений запроса записи и размером записанных данных.

[0023] Согласно шестому аспекту, вариант осуществления настоящего изобретения обеспечивает контроллер, в том числе: контроллер применяется к системе хранения данных, система хранения данных включает в себя контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора; и контроллер включает в себя:

блок получения, сконфигурированный, чтобы получать информацию потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные; и

блок формирования, сконфигурированный, чтобы согласно информации потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные, формировать, правило пересылки, соответствующее запросу чтения.

[0024] Согласно шестому аспекту, в первом возможном способе реализации, блок получения конкретно сконфигурирован, чтобы принимать информацию потоковой нагрузки, сообщаемую устройствами хранения данных, которые хранят запрошенные данные.

[0025] Согласно шестому аспекту, во втором возможном способе реализации, блок получения конкретно сконфигурирован, чтобы получать значение количества раз, которое запрос операции пересылается на устройства хранения данных, которые хранят запрошенные данные, где значение количества записано в элементе таблицы потоков для таблицы потоков коммутатора, и запрос операции включает в себя запрос записи и запрос чтения.

[0026] Согласно седьмому аспекту, вариант осуществления настоящего изобретения обеспечивает коммутатор, где коммутатор применяется к системе хранения данных, система хранения данных включает в себя контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором, и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора; и коммутатор включает в себя центральный процессор и память, где центральный процессор и память соединены с использованием шины, память сконфигурирована, чтобы сохранять машинную команду(ы?), и центральный процессор исполняет машинную команду, сохраненную в памяти, чтобы реализовывать первый аспект или любой из первого-четвертого возможных способов реализации первого аспекта в настоящем изобретении.

[0027] Согласно восьмому аспекту, вариант осуществления настоящего изобретения обеспечивает контроллер, где контроллер применяется к системе хранения данных, система хранения данных включает в себя контроллер, коммутатор и устройство хранения данных, осуществляющее связь с коммутатором, контроллер осуществляет связь с коммутатором, и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора; и контроллер включает в себя центральный процессор и память, где центральный процессор и память соединены с использованием шины, память сконфигурирована, чтобы сохранять машинную команду, и центральный процессор исполняет машинную команду, сохраненную в памяти, чтобы реализовывать второй аспект, или первый или второй возможный способ реализации второго аспекта в настоящем изобретении.

[0028] Согласно девятому аспекту, вариант осуществления настоящего изобретения обеспечивает контроллер, где контроллер применяется к системе хранения данных, система хранения данных включает в себя контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором, и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора; и контроллер включает в себя центральный процессор и память, где центральный процессор и память соединены с использованием шины, память сконфигурирована, чтобы сохранять машинную команду, и центральный процессор исполняет машинную команду, сохраненную в памяти, чтобы реализовывать третий аспект, или первый или второй возможный способ реализации третьего аспекта в настоящем изобретении.

[0029] Согласно десятому аспекту, вариант осуществления настоящего изобретения обеспечивает энергонезависимый читаемый компьютером носитель данных, где носитель данных компьютера данных хранит машинную команду и сконфигурирован, чтобы реализовывать, когда компьютер исполняет машинную команду, первый аспект или любой из первого-четвертого возможных способов реализации первого аспекта в настоящем изобретении.

[0030] Согласно одиннадцатому аспекту, вариант осуществления настоящего изобретения обеспечивает энергонезависимый читаемый компьютером носитель данных, где носитель данных компьютера хранит машинную команду и сконфигурирован, чтобы реализовывать второй аспект, или первый или второй возможный способ реализации второго аспекта в настоящем изобретении, когда компьютер исполняет машинную команду.

[0031] Согласно двенадцатому аспекту, вариант осуществления настоящего изобретения обеспечивает энергонезависимый читаемый компьютером носитель данных, где носитель данных компьютера хранит машинную команду и сконфигурирован, чтобы реализовывать третий аспект, или первый или второй возможный способ реализации третьего аспекта в настоящем изобретении, когда компьютер исполняет машинную команду.

[0032] Согласно вариантам осуществления настоящего изобретения, в системе хранения данных коммутатор принимает запрос операции, где запрос операции несет идентификационные данные запроса; коммутатор запрашивает в соответствии с идентификационными данными запроса таблицу потоков коммутатора, чтобы получить элемент таблицы потоков, соответствующий запросу операции; и коммутатор пересылает запрос операции на целевое устройство хранения данных из числа устройств хранения данных согласно правилу пересылки из соответствующего элемента таблицы потоков. С использованием характеристики Программно-конфигурируемой сети (Software Defined Network) запрос операции обрабатывается согласно правилу пересылки из элемента таблицы потоков коммутатора, посредством этого реализуя балансировку нагрузки устройств хранения данных и снижение информационного взаимодействия между устройствами хранения данных.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

[0033] Чтобы описать технические решения в вариантах осуществления настоящего изобретения более ясно, последующее кратко предваряет сопроводительные чертежи, необходимые для описания вариантов осуществления. Несомненно, сопроводительные чертежи в последующем описании показывают просто некоторые варианты осуществления настоящего изобретения, и средний специалист в данной области техники все же сможет вывести другие чертежи из этих сопроводительных чертежей без творческих усилий.

[0034] Фиг.1 - схематичное представление способа согласно варианту осуществления настоящего изобретения;

[0035] Фиг.2 - схематичное представление системы хранения объектных данных согласно варианту осуществления настоящего изобретения;

[0036] Фиг.3 - схема системы Программно-конфигурируемой сети на основе протокола Openflow («Открытый поток»);

[0037] Фиг.4 - таблица потоков коммутатора в Программно-конфигурируемой сети;

[0038] Фиг.5 - схематичная структурная схема элемента таблицы потоков в таблице потоков;

[0039] Фиг.6 - схематичная структурная схема поля заголовка пакета в элементе таблицы потоков;

[0040] Фиг.7 - схематичное представление способа для обработки запроса объектной операции в системе хранения объектных данных согласно варианту осуществления настоящего изобретения;

[0041] Фиг.8 - схематичное представление способа для формирования правила пересылки для элемента таблицы потоков посредством контроллера согласно варианту осуществления настоящего изобретения;

[0042] Фиг.9 - схематичное представление способа для формирования правила пересылки для элемента таблицы потоков посредством контроллера согласно варианту осуществления настоящего изобретения;

[0043] Фиг.10 - схематичное представление коммутатора; и

[0044] Фиг.11 - схематичное представление контроллера.

ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ

[0045] Последующее ясно описывает технические решения в вариантах осуществления настоящего изобретения со ссылкой на сопроводительные чертежи в вариантах осуществления настоящего изобретения. Несомненно, описанные варианты осуществления являются предпочтительно частью, а не всеми вариантами осуществления настоящего изобретения. Все другие варианты осуществления, полученные средним специалистом в данной области техники на основе вариантов осуществления настоящего изобретения без творческих усилий, будут находиться в рамках объема охраны настоящего изобретения.

[0046] Варианты осуществления настоящего изобретения применяются к системе хранения данных, система хранения данных включает в себя контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором, и контроллер сконфигурирован, чтобы формулировать и доставлять таблицу потоков коммутатора. Система хранения данных может быть системой хранения на уровне файла, системой хранения на уровне блока данных или системой хранения объектных данных. Система хранения данных может также включать в себя, по меньшей мере, две системы из системы хранения на уровне файла, системы хранения на уровне блока данных и системы хранения объектных данных.

[0047] Как показано на Фиг.1, способом для обработки запроса операции в системе хранения данных, представленным в варианте осуществления настоящего изобретения, является изложенный ниже:

[0048] 101: коммутатор принимает запрос операции, где запрос операции несет идентификационные данные запроса, и идентификационные данные запроса включают в себя, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения.

[0049] 102: коммутатор запрашивает в соответствии с идентификационными данными запроса таблицу потоков коммутатора, чтобы получить элемент таблицы потоков, соответствующий запросу операции.

[0050] 103: коммутатор пересылает запрос операции на целевое устройство хранения данных из числа устройств хранения данных согласно правилу пересылки в соответствующем элементе таблицы потоков.

[0051] Способом реализации, когда идентификационные данные запроса являются информацией о группе пользователей, бит идентификации виртуальной локальной сети в запросе операции несет информацию о группе пользователей, и бит идентификации виртуальной локальной сети в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о группе пользователей; или

когда идентификационные данные запроса являются информацией о стратегии хранения, бит типа услуги по протоколу Internet в запросе операции несет информацию о стратегии хранения, и бит типа услуги по протоколу Internet в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о стратегии хранения; или

когда идентификационные данные запроса являются информацией о группе пользователей и информацией о стратегии хранения, бит идентификации виртуальной локальной сети в запросе операции несет информацию о группе пользователей, бит типа услуги по протоколу Internet в запросе операции несет информацию о стратегии хранения, бит идентификации виртуальной локальной сети в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о группе пользователей, и бит типа услуги по протоколу Internet в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о стратегии хранения.

[0052] В способе реализации, когда запрос операции является запросом чтения, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные.

[0053] Кроме того, способ дополнительно включает в себя: обновление посредством коммутатора значения количества раз, которое запрос чтения пересылается на целевое устройство хранения данных, где значение количества записано в соответствующий элемент таблицы потоков.

[0054] В способе реализации, когда запрос операции является запросом записи, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно оставшемуся пространству памяти в устройствах хранения данных.

[0055] Кроме того, способ дополнительно включает в себя: обновление посредством коммутатора значения количества раз, которое запрос записи пересылается на целевое устройство хранения данных, где значение количества записано в соответствующий элемент таблицы потоков.

[0056] Согласно варианту осуществления настоящего изобретения, идентификационные данные запроса включают в себя, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения, где информация о группе пользователей может быть информацией IP-адреса клиента, информацией адреса клиента или подобной; и информация о стратегии хранения может быть числом копий запрошенных данных в устройствах хранения данных, или числом копий запрошенных данных, подлежащих записи в устройства хранения данных.

[0057] Согласно способу для обработки запроса операции в системе хранения данных, представленному в варианте осуществления настоящего изобретения, с использованием характеристики программно-конфигурируемой сети, запрос операции обрабатывается согласно правилу пересылки в таблице потоков коммутатора, посредством этого реализуя балансировку нагрузки устройств хранения данных и снижение информационного взаимодействия между устройствами хранения данных.

[0058] Используя систему хранения объектных данных в качестве примера, в системе хранения объектных данных объект используется в качестве основной единицы хранения данных. Один объект включает в себя данные файла и метаданные файла; запрос операции является запросом объектной операции, включая запрос чтения объекта и запрос записи объекта; данные, запрошенные запросом чтения, а именно, запрошенные запросом чтения объекта, являют собой объект, и данные, записанные запросом записи объекта, являют собой объект; и устройство хранения данных в системе хранения объектных данных является устройством хранения объектных данных. В варианте осуществления настоящего изобретения, как показано на Фиг.2, система хранения объектных данных включает в себя сервер 103 метаданных, контроллер 104, коммутаторы 1051-105m и устройства 1061, 1062 и 1063-106L хранения данных, то есть, устройства 1061, 1062 и 1063-106L хранения объектных данных в системе хранения объектных данных, где L - целое число, указывающее число устройств хранения объектных данных, и конкретное значение не ограничивается. Сервер 103 метаданных сконфигурирован, чтобы сохранять идентификационную информацию запроса данных, сохраненных в устройствах 1061, 1062 и 1063-106L хранения объектных данных, то есть, сконфигурирован для сохранения идентификационных данных запроса объекта, сохраненного в устройствах 1061, 1062 и 1063-106L хранения объектных данных. Относительно идентификации запроса подробности подлежат описанию ниже. Устройства 1061, 1062 и 1063-106L хранения объектных данных сконфигурированы, чтобы сохранять данные, то есть, сконфигурированы, чтобы сохранять объект в системе хранения объектных данных. Коммутаторы 1051-105m и контроллер 104 образуют программно-конфигурируемую сеть. Коммутаторы 1051-105m осуществляют связь с устройствами 1061, 1062 и 1063-106L хранения объектных данных. Коммутаторы 1051-105m сконфигурированы для пересылки запроса операции, то есть, запроса объектной операции в системе хранения объектных данных, на устройства 1061, 1062 и 1063-106L хранения объектных данных согласно правилу пересылки в элементе таблицы потоков в таблице потоков. Контроллер 104 сконфигурирован, чтобы формулировать и обновлять элемент таблицы потоков в таблице потоков коммутаторов 1051-105m. Только контроллер 104 описывается в варианте осуществления настоящего изобретения. В системе хранения объектных данных в осуществлении настоящего изобретения число контроллеров не ограничивается единицей, и могут быть множественные контроллеры с тем, чтобы реализовывать балансировку нагрузки и избыточность. Для клиентов 1011-101n, показанных на Фиг.2, в исполнении реализации запрос объектной операции посылается с использованием прокси-сервера 102 системы хранения объектных данных для осуществления доступа к устройствам 1061, 1062 и 1063-106L хранения объектных данных, где n - целое число, указывающее число клиентов, и конкретное значение не ограничивается. В варианте осуществления настоящего изобретения прокси-сервер 102 системы хранения объектных данных может быть независимым физическим сервером или может быть встроенным в клиенты 1011-101n, каковое не ограничивается в настоящем изобретении.

[0059] В Программно-конфигурируемой сети, образуемой контроллером 104 и коммутаторами 1051-105m, контроллер 104 осуществляет связь с коммутаторами 1051-105m, используя защищенный канал. Например, контроллер 104 может осуществлять связь с коммутаторами 1051-105m с использованием протокола Openflow, и контроллер 104 формулирует и обновляет элемент таблицы потоков в таблице потоков, сохраняемой в коммутаторах 1051-105m. В варианте осуществления настоящего изобретения, использование протокола Openflow между контроллером 104 и коммутатором 1051 является лишь иллюстративным описанием. Настоящее изобретение также является применимым к способу действий, что другой протокол используется для реализации в Программно-конфигурируемой сети. С использованием коммутатора 1051 и контроллера 104 в качестве примера, как показано на Фиг.3, контроллер 104 формулирует и обновляет элемент таблицы потоков в таблице потоков в коммутаторе 1051; и когда коммутатор 1051 принимает запрос объектной операции, синтаксически разбирает запрос объектной операции, запрашивает элемент таблицы потоков, соответствующий запросу объектной операции, в таблице потоков коммутатора 1051 и обрабатывает запрос объектной операции согласно правилу пересылки в соответствующем элементе таблицы потоков. Конкретно, в способе реализации, таблица потоков в коммутаторе 1051 образована элементом 1 таблицы потока и элементами 2-R таблицы потоков, где R - натуральное число. Как показано на Фиг.4, коммутатор 1051 принимает запрос объектной операции и запрашивает элемент таблицы потоков в таблице потоков, где элемент таблицы потоков в таблице потоков обычно запрашивают образом линии потока; и если элемент таблицы потоков, совпадающий с запросом объектной операции, получен по запросу, то выполняет обработку согласно правилу пересылки в соответствующем элементе таблицы потоков. Для элемента таблицы потоков для таблицы потоков, показанной на Фиг.4, конкретная структура показана на Фиг.5 и включает в себя три части: поле заголовка пакета, счетчик и правило пересылки. Поле заголовка пакета используется для установления соответствия запросу объектной операции; счетчик используется для подсчета количества раз, которое запрос объектной операции обрабатывается для элемента таблицы потоков; и правило пересылки используется, чтобы определять способ пересылки запроса объектной операции, например, принимая решение, каким образом пересылать запрос объектной операции, принимая решение, на какой порт пересылается запрос операции, и подобное. Как показано на Фиг.6, поле заголовка пакета включает в себя порт ввода, адрес отправителя на уровне управления доступом к среде передачи (MAC), MAC-адрес получателя, тип протокола Ethernet, идентификатор виртуальной локальной сети (VLAN ID), адрес отправителя по протоколу Internet (IP), IP-адрес получателя, IP-порт, бит IP типа услуги (ToS), порт отправителя по протоколу управления передачей (TCP) и TCP-порт получателя. В варианте осуществления настоящего изобретения запрос объектной операции может инкапсулировать идентификационные данные запроса, и идентификационные данные запроса включают в себя, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения. Например, информация о группе пользователей инкапсулируется в запросе объектной операции. Конкретно, информация о группе пользователей может быть инкапсулирована в бит VLAN ID запроса объектной операции, и информация о стратегии хранения может быть инкапсулирована в бит IP ToS запроса объектной операции. Инкапсуляция идентификации запроса может осуществляться прокси-сервером 102 системы хранения объектных данных. После приема запроса объектной операции коммутатор 1051 запрашивает элемент таблицы потоков, соответствующий запросу объектной операции, в таблице потоков коммутатора 1051. Запрос объектной операции обрабатывается согласно правилу пересылки в соответствующем элементе таблицы потоков, полученному по запросу. После того, как запрос объектной операции пересылается согласно правилу пересылки, счетчик обновляет значение количества раз, чтобы переслать запрос объектной операции в элементе таблицы потоков. Если не существует элемент таблицы потоков, соответствующий запросу объектной операции, запрос объектной операции пересылается на контроллер 104; и контроллер 104 формулирует правило пересылки для запроса объектной операции, формирует элемент таблицы потоков и обновляет таблицу потоков в коммутаторе 1051.

[0060] На основании предшествующего описания, как показано на Фиг.7, вариант осуществления настоящего изобретения представляет способ для обработки запроса объектной операции в системе хранения объектных данных согласно архитектуре системы, показанной на Фиг.2, включающий в себя:

[0061] Этап 701: коммутатор принимает запрос объектной операции, где запрос объектной операции несет идентификационные данные запроса, и идентификационные данные запроса включают в себя, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения.

[0062] 702: коммутатор запрашивает, в соответствии с идентификационными данными запроса, таблицу потоков коммутатора, чтобы получить элемент таблицы потоков, соответствующий запросу объектной операции.

[0063] 703: коммутатор пересылает запрос объектной операции на целевое устройство хранения объектных данных из числа устройств хранения объектных данных согласно правилу пересылки в соответствующем элементе таблицы потоков.

[0064] В предшествующем способе для обработки запроса объектной операции в системе хранения объектных данных, когда идентификационные данные запроса являются информацией о группе пользователей, бит идентификации виртуальной локальной сети в запросе объектной операции несет информацию о группе пользователей, и бит идентификации виртуальной локальной сети в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о группе пользователей; или

если идентификационные данные запроса являются информацией о стратегии хранения, бит типа услуги по протоколу Internet в запросе объектной операции несет информацию о стратегии хранения, и бит типа услуги по протоколу Internet в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о стратегии хранения; или

если идентификационные данные запроса являются информацией о группе пользователей и информацией о стратегии хранения, бит идентификации виртуальной локальной сети в запросе объектной операции несет информацию о группе пользователей, бит типа услуги по протоколу Internet в запросе объектной операции несет информацию о стратегии хранения, бит идентификации виртуальной локальной сети в поле заголовка пакета соответствующего элемента таблицы потоков несет информацию о группе пользователей, и бит типа услуги по протоколу Internet в поле заголовка пакета в соответствующем элементе таблицы потоков несет информацию о стратегии хранения.

[0065] В системе хранения объектных данных, представленной в варианте осуществления настоящего изобретения, запрос объектной операции, несущий идентификацию запроса, пересылается на соответствующее устройство хранения объектных данных с использованием коммутатора в Программно-конфигурируемой сети, контроллер формулирует правило пересылки в элементе таблицы потоков коммутатора, и коммутатор пересылает запрос чтения объекта согласно правилу пересылки в элементе таблицы потоков, посредством этого реализуя балансировку нагрузки устройств хранения объектных данных и снижение информационного взаимодействия между устройствами хранения объектных данных.

[0066] Со ссылкой на Фиг.2, конкретно, в способе для обработки запроса объектной операции, показанного на Фиг.7, когда запрос объектной операции является запросом чтения объекта, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно потоковой нагрузке устройств хранения объектных данных, которые хранят требуемый объект. После того, как коммутатор пересылает запрос объектной операции на целевое устройство хранения объектных данных из числа устройств хранения объектных данных согласно правилу пересылки в соответствующем элементе таблицы потоков, способ дополнительно включает в себя: обновление, посредством коммутатора, значения количества раз, которое запрос чтения объекта пересылается на целевое устройство хранения объектных данных, где значение количества записано в соответствующий элемент таблицы потоков. Последующее описывает подробности.

[0067] Используя пример, что клиент 101 посылает запрос чтения на систему хранения объектных данных, клиент 101 посылает запрос чтения, и прокси-сервер 102 системы хранения объектных данных принимает запрос чтения, посланный клиентом 101, осуществляет доступ к серверу 103 метаданных согласно запросу чтения, и получает идентификационные данные запроса запрошенного объекта, где идентификационные данные запроса включают в себя, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения, идентификационные данные запроса используются, чтобы сохранять в сервере 103 метаданных после того, как объект записывается в устройства хранения объектных данных, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения, переносимой в запросе записи объекта; и идентификация запроса, сохраненная в сервере 103 метаданных, определяется содержимым идентификационных данных запроса объекта, который зарегистрирован в сервере 103 метаданных устройствами хранения объектных данных, которые сохраняют записанный объект. Когда клиент инициирует к системе хранения объектных данных запрос чтения объекта, запрашивается сервер 103 метаданных, чтобы получить идентификационные данные запроса объекта, где информация о группе пользователей может быть информацией IP-адреса клиента, который записывает объект в систему хранения объектных данных, или другой информацией, которая может идентифицировать клиент, который записывает объект в систему хранения объектных данных; и информация о стратегии хранения может быть числом копий запрошенного объекта в устройствах хранения объектных данных. Для запроса чтения объекта, поскольку запрошенный объект уже был сохранен в устройствах хранения объектных данных, когда запрошенный объект записывается в устройства хранения объектных данных, идентификационные данные запроса объекта посылаются на сервер 103 метаданных. В варианте осуществления настоящего изобретения идентификационные данные запроса для формирования информации о группе пользователей и стратегии хранения используются в качестве примера, где информация о группе пользователей является информацией об IP-адресе клиента, который записывает объект в систему хранения объектных данных, и информация о стратегии хранения - число копий запрошенного объекта, которое есть 3. Прокси-сервер 102 системы хранения объектных данных инкапсулирует идентификационные данные запроса, полученные от сервера 103 метаданных, чтобы сформировать запрос чтения объекта, и конкретный формат запроса чтения объекта показан на Фиг.6. В варианте осуществления настоящего изобретения информация о группе пользователей инкапсулируется в бит ID VLAN запроса операции чтения объекта, и информация о стратегии хранения инкапсулируется в бит IP ToS запроса операции чтения объекта.

[0068] Прокси-сервер 102 системы хранения объектных данных посылает запрос чтения объекта на коммутатор 1051.

[0069] Коммутатор 1051 принимает запрос чтения объекта, посланный прокси-сервером 102 системы хранения данных и синтаксически разбирает в запросе чтения объекта информацию бита ID VLAN и бита ToS, чтобы получить информацию о группе пользователей и информацию о стратегии хранения, соответственно. Элемент таблицы потоков в таблице потоков запрашивают в соответствии с данными о группе пользователей и информацией о стратегии хранения, полученными путем разбора. Информация о группе пользователей, которая синтаксически выделена из бита ID VLAN запроса чтения объекта, и информация о стратегии хранения, которая синтаксически выделена из бита IP ToS запроса чтения объекта, используется для установления соответствия поля заголовка пакета каждого элемента таблицы потоков, чтобы найти соответствующий элемент таблицы потоков, и затем запрос чтения объекта пересылается согласно правилу пересылки в соответствующем элементе таблицы потоков. Конкретно, для запроса чтения объекта, правило пересылки элемента таблицы потоков формулируется контроллером 104 согласно потоковой нагрузке устройств хранения объектных данных, которые хранят запрошенный объект, то есть, целевое устройство хранения объектных данных выбирают согласно потоковой нагрузке устройства хранения объектных данных, где размещен запрошенный объект. Например, в таблице потоков, показанной на Фиг.4, элемент 3 таблицы потоков является элементом таблицы потоков, соответствующим запросу чтения объекта, и структура элемента 3 таблицы потоков показана на Фиг.5, информация в ID VLAN поля заголовка пакета соответствует информации в ID VLAN запроса чтения объекта, и информация в бите IP ToS поля заголовка пакета соответствует информации в бите IP ToS запроса чтения объекта. Правило пересылки в элементе 3 таблицы потоков формулируется контроллером 104 согласно потоковой нагрузке устройств хранения объектных данных, которые хранят запрошенный объект, например, устройства 1061, 1062 и 1063 хранения объектных данных являются устройствами хранения объектных данных, хранящими три копии запрошенного объекта. Контроллер 104 определяет, согласно потоковой нагрузке устройств 1061, 1062 и 1063 хранения объектных данных, что устройство 1061 хранения объектных данных является устройством хранения объектных данных с самой легкой потоковой нагрузкой, и правило пересылки состоит в пересылке запроса чтения объекта на устройство 1061 хранения объектных данных. Контроллер 104 формулирует правило пересылки согласно потоковой нагрузке устройств 1061, 1062 и 1063 хранения объектных данных; конкретно, коммутатор 1051 периодически сообщает на контроллер 104 значение количества раз выполнения пересылки запроса объектной операции, где значение количества записано в каждом элементе таблицы потоков в таблице потоков, или контроллер 104 периодически получает от коммутатора 1051 значение количества раз выполнения пересылки запроса объектной операции, значение количества записано в каждом элементе таблицы потоков в таблице потоков, или устройства 1061, 1062 и 1063 хранения объектных данных сообщают потоковую нагрузку на контроллер 104, чтобы обновить правила пересылки для элемента таблицы потоков, где запрос объектной операции здесь включает в себя запрос чтения объекта и запрос записи объекта. Таким образом, контроллер 104 формулирует или обновляет правило пересылки элемента таблицы потоков в соответствии с количеством раз, которое запрос объектной операции пересылается на устройства 1061, 1062 и 1063 хранения объектных данных, значение количества записывается в счетчик в элементе таблицы потоков. Например, имеются 50 элементов таблицы потоков с правилом пересылки, которое состоит в пересылке запроса объектной операции на устройство 1061 хранения объектных данных, и в вышеупомянутый период, для 50 таблиц потоков общее количество выполнений пересылки запроса объектной операции составляет 5000, где значение количества записывается посредством счетчика для каждого элемента таблицы потоков; имеются 45 элементов таблицы потоков с правилом пересылки, которое состоит в пересылке запроса объектной операции на устройство 1062 хранения объектных данных, и в вышеупомянутый период для 45 таблиц потоков общее количество выполнений пересылки запроса объектной операции составляет 5500, где значение количества записывается посредством счетчика для каждого элемента таблицы потоков времена по числу пересылок запроса объектной операции; и имеются 50 элементов таблицы потоков с правилом пересылки, которое состоит в пересылке запроса объектной операции на устройство 1063 хранения объектных данных, и в вышеупомянутый период для 50 таблиц потоков общее количество выполнений пересылки запроса объектной операции составляет 6000, где значение количества записывается посредством счетчика в каждом элементе таблицы потоков по числу пересылок запроса объектной операции. В вышеупомянутый период устройство 1061 хранения объектных данных имеет самую легкую потоковую нагрузку. Следовательно, в варианте осуществления настоящего изобретения, для объекта, запрошенного по запросу чтения объекта, правило пересылки, которое контроллер 104 формулирует для запроса чтения объекта согласно потоковой нагрузке устройств 1061, 1062 и 1063 хранения объектных данных, хранящих объект, состоит в пересылке запроса чтения объекта на устройство 1061 хранения объектных данных. Когда не получен соответствующий элемент таблицы потоков коммутатором 1051 по запросу, коммутатор 1051 с использованием протокола Openflow пересылает запрос чтения объекта на контроллер 104 через защищенный канал, показанный на Фиг.2; контроллер 104 определяет запрошенный объект в соответствии с идентификационными данными запроса, несомыми в запросе чтения объекта, формулирует элемент таблицы потоков для запроса чтения объекта согласно потоковой нагрузке устройств хранения объектных данных, которые хранят запрошенный объект, и доставляет элемент таблицы потоков на коммутатор 1051, чтобы обновить таблицу потоков в коммутаторе 1051; и коммутатор 1051 пересылает запрос чтения объекта согласно элементу таблицы потоков, доставленному контроллером 104.

[0070] В варианте осуществления настоящего изобретения при условии, что устройство 1061 хранения объектных данных является устройством хранения объектных данных с самой легкой потоковой нагрузкой, коммутатор согласно соответствующему правилу пересылки в элементе 3 таблицы потоков пересылает запрос объектной операции на порт, через который осуществляют связь устройство 1061 хранения объектных данных и коммутатор 1051. Счетчик в элементе 3 таблицы потоков обновляет значение количества раз выполнения пересылки запроса чтения объекта на устройство 1061 хранения объектных данных.

[0071] Коммутатор 1051 изменяет IP-адрес получателя запроса чтения объекта на IP-адрес устройства 1062 хранения объектных данных, изменяет MAC-адрес получателя в запросе чтения объекта на MAC адрес устройства 1062 хранения объектных данных и пересылает модифицированный запрос чтения объекта на устройство 1062 хранения объектных данных.

[0072] После приема модифицированного запроса чтения объекта, устройство 1062 хранения объектных данных возвращает содержимое запрошенного объекта на прокси-сервер 102 системы хранения объектных данных.

[0073] Прокси-сервер 102 системы хранения объектных данных возвращает содержимое запрошенного объекта на клиент 101.

[0074] Согласно варианту осуществления настоящего изобретения, другой способ реализации для запроса чтения объекта состоит в том, что для объекта, имеющего более двух копий, например, запрошенный объект в варианте осуществления настоящего изобретения, у которого имеются три копии в устройствах хранения объектных данных, правило пересылки элемента таблицы потоков, соответствующего запросу чтения объекта, может состоять в пересылке запроса чтения объекта на два устройства хранения объектных данных. Как описано в предшествующем варианте осуществления, например, имеются 50 элементов таблицы потоков с правилом пересылки, которое состоит в пересылке запроса объектной операции на устройство 1061 хранения объектных данных, и в вышеупомянутый период, для 50 таблиц потоков общее количество раз пересылки запроса объектной операции составляет 5000, где запрос объектной операции записывается посредством счетчика для каждого элемента таблицы потоков; имеются 45 элементов таблицы потоков с правилом пересылки, которое состоит в пересылке запроса объектной операции на устройство 1062 хранения объектных данных, и в вышеупомянутый период для 45 таблиц потоков общее количество раз пересылки запроса объектной операции, которое записано счетчиком каждого элемента таблицы потоков, составляет 5500; и имеются 50 элементов таблицы потоков с правилом пересылки, которое состоит в пересылке запроса объектной операции на устройство 1063 хранения объектных данных, и в вышеупомянутый период для 50 таблиц потоков общее количество раз пересылки запроса объектной операции, которое записано счетчиком для каждого элемента таблицы потоков, составляет 6000. В вышеупомянутый период устройства 1061 и 1062 хранения объектных данных являются целевыми устройствами хранения объектных данных с относительно легкой потоковой нагрузкой; если запрос чтения объекта подлежит пересылке на два целевых устройства, то правило пересылки в элементе таблицы потоков, которое контроллер 104 формулирует для запроса чтения объекта, состоит в пересылке запроса чтения объекта на устройства 1061 и 1062 хранения объектных данных, посредством этого реализуя параллелизм чтения объекта и повышая эффективность запроса чтения объекта.

[0075] В варианте осуществления настоящего изобретения идентификационные данные запроса, несомы в запросе чтения объекта, могут также включать в себя только одно из информации о группе пользователей или информации о стратегии хранения, каковое не ограничивается в настоящем изобретении.

[0076] В системе хранения объектных данных, представленной в осуществлении настоящего изобретения, согласно способу обработки для пересылки запроса чтения объекта, несущего идентификационные данные запроса на соответствующее устройство хранения объектных данных с использованием коммутатора в Программно-конфигурируемой сети, контроллер доставляет элемент таблицы потоков правила пересылки для запроса чтения объекта согласно потоковой нагрузке целевого устройства хранения объектных данных, и коммутатор пересылает запрос чтения объекта согласно правилу пересылки в элементе таблицы потоков, посредством этого реализуя балансировку нагрузки устройств хранения объектных данных и снижение информационного взаимодействия между устройствами хранения объектных данных.

[0077] Со ссылкой на Фиг.2, конкретно, в способе для обработки запроса объектной операции, показанного на Фиг.7, когда запрос объектной операции является запросом записи объекта, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно оставшемуся пространству памяти устройств хранения объектных данных. После того, как коммутатор пересылает запрос объектной операции на целевое устройство хранения объектных данных из числа устройств хранения объектных данных согласно правилу пересылки в соответствующем элементе таблицы потоков, способ дополнительно включает в себя: обновление посредством коммутатора значения количества раз, которое запрос записи пересылается на целевое устройство хранения объектных данных, где значение количества записано в соответствующий элемент таблицы потоков. Последующее описывает подробности.

[0078] Используя пример, что клиент 101 посылает запрос записи на систему хранения объектных данных, клиент 101 посылает запрос записи, и прокси-сервер 102 системы хранения объектных данных принимает запрос записи, посланный клиентом 101. Поскольку объект подлежит записи в систему хранения объектных данных, сервер 103 метаданных не имеет идентификационных данных запроса объекта, подлежащего записи, и прокси-сервер 102 системы хранения объектных данных получает из запроса записи идентификацию запроса объекта, подлежащего записи. Идентификационные данные запроса включают в себя, по меньшей мере, одно из информации о группе пользователей и стратегии хранения, где информация о группе пользователей может быть информацией IP-адреса клиента, который записывает объект в систему хранения объектных данных, или другой информацией, которая может идентифицировать клиент, который записывает объект в систему хранения объектных данных; и стратегия хранения может быть числом копий записанного объекта в устройствах хранения объектных данных. В варианте осуществления настоящего изобретения идентификация запроса, включающая информацию о группе пользователей и стратегию хранения, используется в качестве примера, где информацией о группе пользователей является информация IP-адреса клиента, и информацией о стратегии хранения является конкретное число копий записанного объекта, запрошенного пользователем, в устройствах 1061, 1062 и 1063-106L хранения объектных данных, где числом копий объекта является 3.

[0079] Прокси-сервер 102 системы хранения объектных данных инкапсулирует идентификацию запроса, чтобы сформировать запрос записи объекта. Конкретный формат запроса записи объекта показан на Фиг.6. Прокси-сервер 102 системы хранения объектных данных инкапсулирует полученную идентификацию запроса в конкретном бите идентификации запроса записи объекта. В варианте осуществления настоящего изобретения информация о группе пользователей инкапсулируется в бите ID VLAN запроса записи объекта, и информация о стратегии хранения инкапсулируется в бите IP ToS запроса записи объекта.

[0080] Прокси-сервер 102 системы хранения объектных данных посылает запрос записи объекта на коммутатор 1051.

[0081] Коммутатор 1051 принимает запрос записи объекта, посланный прокси-сервером 102 системы хранения объектных данных, и синтаксически разбирает информацию бита ID VLAN и бита ToS запроса записи объекта, чтобы получить информацию о группе пользователей и информацию о стратегии хранения, соответственно. Элемент таблицы потоков в таблице потоков запрашивают в соответствии с информацией о группе пользователей и информацией о стратегии хранения, полученной путем разбора. Информация о группе пользователей, которая синтаксически выделена из бита ID VLAN запроса записи объекта, и информация о стратегии хранения, которая синтаксически выделена из бита IP ToS запроса записи объекта, используется для установления соответствия поля заголовка пакета элемента таблицы потоков, соответственно, чтобы найти соответствующий элемент таблицы потоков, и затем запрос записи объекта пересылается согласно правилу пересылки в соответствующем элементе таблицы потоков.

[0082] Конкретно, для запроса записи объекта, правило пересылки элемента таблицы потоков формулируется контроллером 104 оставшемуся пространству памяти устройств 1061, 1062 и 1063-106L хранения объектных данных, то есть, целевое устройство хранения объектных данных выбирается для запроса записи объекта оставшемуся пространству памяти устройств хранения объектных данных. Например, в таблице потоков, показанной на Фиг.4, элемент 3 таблицы потоков - элемент таблицы потоков, соответствующий запросу записи объекта, и структура элемента 3 таблицы потоков показана на Фиг.5, информация в ID VLAN в поле заголовка пакета соответствует информации в ID VLAN заголовка запроса записи объекта, и информация в бите IP ToS поля заголовка пакета соответствует информации в бите IP ToS запроса записи объекта. Правило для операции в элементе 3 таблицы потоков определяется контроллером 104 оставшемуся пространству памяти устройств 1061, 1062 и 1063-106L хранения объектных данных, то есть, целевое устройство хранения объектных данных определяется согласно размеру оставшегося пространства памяти устройств 1061, 1062 и 1063-106L хранения объектных данных. Способ реализации состоит в том, что коммутатор 1051 периодически сообщает на контроллер 104 значение количества раз выполнения пересылки запроса записи объекта, где значение количества записано в каждом элементе таблицы потоков в таблице потоков, или контроллер 104 периодически получает от коммутатора 1051 значение количества раз выполнения пересылки запроса записи объекта, где значение количества записано в каждом элементе таблицы потоков в таблице потоков, или устройства 1061, 1062 и 1063-106L хранения объектных данных сообщают оставшееся пространство памяти на контроллер 104. Оставшееся пространство памяти каждого из устройств хранения объектных данных вычисляют согласно количеству раз, которое запрос записи объекта пересылается на каждое устройство хранения объектных данных, и размеру объекта, подлежащего записи, где количество раз подсчитывают по каждому элементу таблицы потоков в таблице потоков коммутатора 1051. Конкретно, схема реализации такова, что, используя в качестве примера устройство 1061 хранения объектных данных, контроллер 104 вычисляет, согласно количеству раз выполнения пересылки запроса записи объекта на устройство 1061 хранения объектных данных и размеру записанного объекта запроса записи объекта, всякий раз полный размер объектов, записанных в устройство 1061 хранения объектных данных, для хранения, где значение количества записывается в каждый элемент таблицы потоков; и получает, путем вычитания занятого пространства памяти объекта из полного пространства памяти устройства 1061 хранения объектных данных, оставшееся пространство памяти устройства 1061 хранения объектных данных. Подобным образом может быть получено оставшееся пространство памяти устройств 1062-106L хранения объектных данных за период. В варианте осуществления настоящего изобретения, когда запрос записи объекта является первым запросом записи объекта, и таблица потоков коммутатора 1051 не имеет соответствующего элемента таблицы потоков, коммутатор 1051 пересылает запрос записи объекта на контроллер 104 через защищенный канал, показанный на Фиг.3, с использованием протокола Openflow. Контроллер 104 формулирует оставшемуся пространству памяти текущих устройств 1061, 1062 и 1063-106L хранения объектных данных правило пересылки для запроса записи объекта, формирует элемент 3 таблицы потоков в варианте осуществления настоящего изобретения и доставляет элемент 3 таблицы потоков на коммутатор 1051. Коммутатор 1051 обновляет таблицу потоков согласно элементу 3 таблицы потоков и пересылает согласно правилу пересылки в элементе 3 таблицы потоков запрос записи объекта. Например, согласно информации о стратегии хранения, которую коммутатор 1051 получает синтаксическим разбором запроса записи объекта, числом копий записанного объекта является 3, и контроллер 104 выбирает из устройств 1061, 1062 и 1063-106L хранения объектных данных три устройства хранения объектных данных с максимальным оставшимся пространством памяти в качестве целевых устройств хранения объектных данных. Например, устройства 1063, 1067 и 1068 хранения объектных данных являются тремя устройствами хранения объектных данных с максимальным оставшимся пространством памяти, для которых оставшееся пространство памяти составляет 1000 Гб у всех, и оставшееся пространство памяти других устройств хранения объектных данных составляет менее чем 1000 Гб; или устройства 1063, 1067 и 1068 хранения объектных данных являются тремя устройствами хранения объектных данных с максимальным оставшимся пространством памяти, для которых оставшееся пространство памяти составляет 1000 Гб, 950 Гб и 900 Гб последовательно, и оставшееся пространство памяти других устройств хранения объектных данных составляет менее чем 900 Гб. Следовательно, правило операции, которое контроллер 104 формулирует для запроса записи объекта, состоит в пересылке запроса записи объекта на устройства 1064, 1067 и 1068 хранения объектных данных. Запрос записи объекта пересылается на порт получателя коммутатора 1051 согласно правилу пересылки в элементе 3 таблицы потоков, где порт получателя коммутатора 1051 является портом, через который коммутатор 1051 осуществляет связь с устройствами 1064, 1067 и 1068 хранения объектных данных отдельно. Контроллер 104 записывает в соответствии с идентификационными данными запроса переносимую в запросе записи объекта информацию об устройствах хранения объектных данных, которые хранят объект; может получать, используя записанную информацию устройств хранения объектных данных, которые хранят объект, потоковую нагрузку устройств хранения объектных данных, которые хранят объект; формулирует согласно потоковой нагрузке устройств хранения объектных данных, которые хранят объект, правило пересылки для запроса чтения объекта, считывающего объект; формирует элемент таблицы потоков, соответствующий запросу чтения объекта, считывающему объект, где элемент таблицы потоков несет идентификационные данные запроса объекта; и идентификация запроса, несомая в запросе чтения объекта, соответствует идентификации запроса, несомой в элементе таблицы потоков с тем, чтобы определить соответствующий элемент таблицы потоков. Относительно конкретной процедуры ссылка может делаться на описание части запроса чтения объекта в варианте осуществления, и подробности повторно здесь не описываются.

[0083] Коммутатор 1051 изменяет IP-адрес получателя запроса записи объекта на IP-адрес устройства 1062 хранения объектных данных и изменяет MAC-адрес получателя запроса записи объекта на MAC-адрес устройства 1062 хранения объектных данных. В варианте осуществления настоящего изобретения запрос записи объекта отдельно передается на устройства 1064, 1067 и 1068 хранения объектных данных согласно правилу пересылки в соответствующем элементе таблицы потоков. Соответственно, IP-адрес получателя запроса записи объекта изменяется на IP-адрес устройства хранения объектных данных 1064, и MAC-адрес получателя запроса записи объекта изменяется на MAC-адрес устройства хранения объектных данных 1064, и модифицированный запрос записи объекта пересылается на устройство 1064 хранения объектных данных. Подобным образом изменяется запрос записи объекта, подлежащий пересылке на устройства 1067 и 1068 хранения объектных данных, и модифицированный запрос записи объекта отдельно пересылается на устройства 1067 и 1068 хранения объектных данных.

[0084] Счетчик в элементе 3 таблицы потоков отдельно обновляет значение количества раз выполнения пересылки запроса записи объекта на устройства 1064, 1067 и 1068 хранения объектных данных.

[0085] Устройства 1064, 1067 и 1068 хранения объектных данных сохраняют записанный объект, и регистрируют идентификацию запроса записанного объекта на сервере 103 метаданных, где сервер 103 метаданных может не сохранять для объекта конкретную информацию местоположения в памяти, а должен только включать идентификацию запроса объекта.

[0086] В варианте осуществления настоящего изобретения идентификационные данные запроса, переносимые в запросе записи объекта, могут также включать в себя только одно из информации о группе пользователей и информации о стратегии хранения, каковое не ограничивается в настоящем изобретении. Предпочтительно, идентификация запроса, по меньшей мере, включает в себя информацию о группе пользователей.

[0087] В системе хранения объектных данных, представленной в варианте осуществления настоящего изобретения, согласно способу обработки для пересылки запроса записи объекта, несущего идентификацию запроса, на соответствующее устройство хранения объектных данных с использованием коммутатора в Программно-конфигурируемой сети, контроллер доставляет оставшемуся пространству памяти устройств хранения объектных данных правило пересылки для запроса записи объекта, чтобы сформировать элемент таблицы потоков коммутатора, и коммутатор пересылает запрос записи объекта согласно правилу пересылки в соответствующем элементе таблицы потоков, посредством этого реализуя балансировку нагрузки пространства памяти устройств хранения объектных данных и снижение информационного взаимодействия между устройствами хранения объектных данных. Кроме того, для объекта, записанного в системе хранения объектных данных, сервер метаданных может записывать только идентификационные данные запроса объекта, посредством этого снижая рабочую нагрузку сервера метаданных.

[0088] В системе хранения объектных данных, представленной в варианте осуществления настоящего изобретения, когда добавляется устройство хранения объектных данных, например, когда добавляется устройство 1061(L+1) хранения объектных данных, устройство 1061(L+1) хранения объектных данных регистрируется в контроллере 104; и информация, зарегистрированная в контроллере 104, включает в себя MAC-адрес устройства 1061(L+1) хранения объектных данных, номер порта для осуществления связи с коммутатором 1051 и пространство памяти. После приема регистрационной информации устройства 1061(L+1) хранения объектных данных, контроллер 104 записывает регистрационную информацию устройства 1061(L+1) хранения объектных данных, формулирует правило пересылки, формирует новый элемент таблицы потоков и доставляет элемент таблицы потоков на коммутатор 1051.

[0089] В системе хранения объектных данных, представленной в варианте осуществления настоящего изобретения, когда устройство хранения объектных данных в системе хранения объектных данных осуществляет выход из-за отказа или по другой причине, например, когда осуществляет выход устройство 1061L хранения объектных данных, контроллер 104 принимает сообщение изменения состояния устройства 1061L хранения объектных данных, где сообщение несет MAC-адрес устройства 1061L хранения объектных данных, номер порта для осуществления связи с коммутатором 1051 и информацию пространства памяти; и контроллер 104 удаляет, согласно сообщению изменения состояния, элемент таблицы потоков с правилом пересылки, которое состоит в пересылке на устройство 1061L хранения объектных данных. Для элемента таблицы потоков с правилом пересылки, которое состоит в пересылке запроса чтения объекта на устройство 1061L хранения объектных данных, контроллер 104 формирует элемент таблицы потоков с правилом пересылки, которое состоит в пересылке на избыточное устройство хранения объектных данных для устройства 1061L хранения объектных данных, где избыточное устройство хранения объектных данных является устройством хранения объектных данных, которое хранит объект из устройства 1061L хранения объектных данных.

[0090] Следовательно, использование Программно-конфигурируемой сети в системе хранения объектных данных реализует увеличение или уменьшение устройств хранения объектных данных в системе хранения объектных данных и повышает гибкость системы хранения объектных данных.

[0091] Согласно описанию варианта осуществления способа для обработки запроса операции в системе хранения данных, контроллер 104 обеспечивает способ для формирования правила пересылки элемента таблицы потоков, как показано на Фиг.8, включающий в себя:

[0092] Этап 801: контроллер получает информацию об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором.

[0093] Этап 802: контроллер формирует, в соответствии с информацией об оставшемся пространстве памяти устройства хранения данных, правило пересылки, соответствующее запросу записи, где запрос записи используется для записи данных в устройство хранения данных, осуществляющее связь с коммутатором.

[0094] В способе реализации, что контроллер получает информацию об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором, конкретно включает в себя: прием контроллером информации об оставшемся пространстве памяти, сообщаемой устройством хранения данных.

[0095] В способе реализации, что контроллер получает информацию об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором, конкретно включает в себя: получение посредством контроллера, количества раз выполнения пересылки запроса записи на устройство хранения данных и размера записанных данных, где значение количества раз и размер записаны в элемент таблицы потоков в таблице потоков коммутатора; и вычисление посредством контроллера оставшегося пространства памяти устройства хранения данных в соответствии с пространством памяти устройства хранения данных, количеством раз выполнения запроса записи и размером записанных данных.

[0096] Конкретно, в системе хранения объектных данных согласно способу, в котором контроллер 104 в варианте осуществления настоящего изобретения представляет способ для формирования правила пересылки для элемента таблицы потоков, устройство хранения данных является конкретно устройством хранения объектных данных, запрос записи является конкретно запросом записи объекта, и данные, записываемые в устройство хранения объектных данных согласно запросу записи объекта, являются объектом.

[0097] В системе хранения данных, представленной в варианте осуществления настоящего изобретения, контроллер на основании программно-конфигурируемой сети формирует в соответствии с информацией пространства памяти устройства хранения данных, правило пересылки для элемента таблицы потоков, соответствующего запросу записи, так что коммутатор обрабатывает запрос записи согласно правилу пересылки, сформированным контроллером, посредством этого реализуя балансировку нагрузки устройства хранения данных и снижение информационного взаимодействия между устройствами хранения данных. Система хранения данных, применимая к варианту осуществления настоящего изобретения, может быть системой хранения на уровне файла, системой хранения на уровня блока данных или системой хранения объектных данных, или может также включать в себя систему хранения из, по меньшей мере, двух из системы хранения данных на уровне файла, системы хранения данных на уровне блока данных и системы хранения объектных данных. Конкретно, для применимости к системе хранения объектных данных, ссылка может делаться на предшествующий вариант осуществления обработки запроса объектной операции в объектно-ориентированной операционной системе, и подробности повторно здесь не описываются.

[0098] Согласно описанию варианта осуществления способа для обработки запроса операции в системе хранения данных, контроллер 104 представляет способ для формирования правила пересылки элемента таблицы потоков, как показано на Фиг.9, включающий в себя:

[0099] 901: контроллер получает информацию о потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные.

[0100] 902: контроллер формирует, согласно информации потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные, правило пересылки, соответствующее запросу чтения.

[0101] В способе реализации, что контроллер получает информацию о потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные, конкретно включает в себя: прием контроллером информации потоковой нагрузки, сообщаемой устройствами хранения данных, которые хранят запрошенные данные.

[0102] В способе реализации, что контроллер получает информацию о потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные, способ конкретно включает в себя: получение, посредством контроллера, значения количества раз выполнения пересылки запроса операции на устройства хранения данных, которые хранят запрошенные данные, где значение количества записывается в элементе таблицы потоков в таблице потоков коммутатора, и запрос операции включает в себя запрос записи и запрос чтения.

[0103] Конкретно, в системе хранения объектных данных, согласно способу, в котором контроллер 104 обеспечивает способ для формирования правила пересылки элемента таблицы потоков в варианте осуществления настоящего изобретения, устройство хранения данных является конкретно устройством хранения объектных данных, запрос чтения является конкретно запросом чтения объекта, и данные, запрашиваемые запросом чтения объекта и сохраняемые в устройстве хранения объектных данных, являются объектом.

[0104] В системе хранения данных, представленной в варианте осуществления настоящего изобретения, контроллер на основе программно-конфигурируемой сети формирует согласно потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные, правила пересылки для элемента таблицы потоков, соответствующего запросу чтения, так что коммутатор обрабатывает запрос чтения согласно правилу пересылки, сформированным контроллером, посредством этого реализуя балансировку нагрузки устройств хранения данных и снижение информационного взаимодействия между устройствами хранения данных. Система хранения данных, применимая к варианту осуществления настоящего изобретения, может быть системой хранения на уровне файла, системой хранения на уровне блока данных или системой хранения объектных данных, или может также включать в себя гибридную систему хранения данных, по меньшей мере, двух систем из системы хранения данных на уровне файла, системы хранения данных на уровне блока данных и системы хранения объектных данных. Конкретно, для применимости к системе хранения объектных данных, ссылка может делаться на предшествующий вариант осуществления обработки запроса объектной операции в объектно-ориентированной операционной системе, и подробности повторно здесь не описываются.

[0105] Согласно предшествующим вариантам осуществления настоящего изобретения, Программно-конфигурируемая сеть используется в системе хранения данных; в Программно-конфигурируемой сети конкретной реализацией контроллера может быть универсальный сервер, исполняющий программное обеспечение контроллера с тем, чтобы реализовывать управление коммутатором в плоскости пересылки данных. Структура универсального сервера включает в себя центральный процессор, память, и подобное; центральный процессор и память соединены с использованием шины; и контроллер и коммутатор реализуют связь, описанную в предшествующих вариантах осуществления. Коммутатор, находящийся в плоскости пересылки данных, может быть универсальным коммутатором или коммутатором Openflow, включающим в себя центральный процессор, память и подобное; центральный процессор и память соединены с использованием шины; и центральный процессор и контроллер реализуют связь, описанную в предшествующих вариантах осуществления, и реализовывать пересылку запроса объектной операции в то же время. В варианте осуществления настоящего изобретения контроллер и коммутатор описаны только иллюстративно, и другие коммутаторы и контроллеры, которые способны реализовывать программно-конфигурируемую сеть, также могут использоваться, чтобы реализовывать настоящее изобретение.

[0106] Согласно описанию предшествующих вариантов осуществления способа по настоящему изобретению, осуществление настоящего изобретения обеспечивает коммутатор, как показано на Фиг.10, включающий в себя приемный блок 1001, блок 1002 запросов и блок 1003 пересылки. Приемный блок 1001 сконфигурирован для приема запроса операции, где запрос операции несет идентификационные данные запроса, и идентификационные данные запроса включают в себя, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения; блок 1002 запросов сконфигурирован, чтобы запрашивать в соответствии с идентификационными данными запроса таблицу потоков коммутатора, чтобы получить элемент таблицы потоков, соответствующий запросу операции; и блок 1003 пересылки сконфигурирован, чтобы пересылать запрос операции на целевое устройство хранения данных из числа устройств хранения данных согласно правилу пересылки в соответствующем элементе таблицы потоков.

[0107] В соответствии с коммутатором, показанным на Фиг.10, когда запрос операции является запросом чтения, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные, и когда запрос операции является запросом записи, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно оставшемуся пространству памяти в устройствах хранения данных.

[0108] Конкретно, в системе хранения объектных данных, приемный блок 1001 сконфигурирован для приема запроса объектной операции, где запрос объектной операции несет идентификационные данные запроса, и идентификационные данные запроса включают в себя, по меньшей мере, одно из информации о группе пользователей и информации о стратегии хранения; блок 1002 запросов сконфигурирован, чтобы запрашивать в соответствии с идентификационными данными запроса таблицу потоков коммутатора, чтобы получить элемент таблицы потоков, соответствующий запросу объектной операции; и блок 1003 пересылки сконфигурирован, чтобы пересылать запрос объектной операции на целевое устройство хранения объектных данных из числа устройств хранения объектных данных согласно правилу пересылки в соответствующем элементе таблицы потоков, где если запрос объектной операции является запросом чтения объекта, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно потоковой нагрузке устройств хранения объектных данных, которые хранят запрошенный объект; и если запрос объектной операции является запросом записи объекта, правило пересылки соответствующего элемента таблицы потоков формулируется контроллером согласно оставшемуся пространству памяти устройств хранения объектных данных.

[0109] В системе хранения данных, представленной в варианте осуществления настоящего изобретения, согласно способу обработки для пересылки запроса операции, несущего идентификационные данные запроса, на соответствующее устройство хранения данных с использованием коммутатора в Программно-конфигурируемой сети, контроллер формулирует правило пересылки в элементе таблицы потоков коммутатора и коммутатор пересылает запрос операции согласно правилу пересылки в элементе таблицы потоков, посредством этого реализуя балансировку нагрузки устройств хранения данных и снижение информационного взаимодействия между устройствами хранения данных.

[0110] Согласно описанию предшествующих вариантов осуществления способа по настоящему изобретению, вариант осуществления настоящего изобретения обеспечивает контроллер, как показано на Фиг.11, включающий в себя блок 1101 получения и блок 1102 формирования, где блок 1101 получения сконфигурирован, чтобы получать информацию об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором; и блок 1102 формирования, который сконфигурирован, чтобы в соответствии с информацией о пространстве памяти устройства хранения данных формировать правило пересылки, соответствующее запросу записи, где запрос записи используется для записи данных в устройство хранения данных, осуществляющее связь с коммутатором. В способе реализации блок 1101 получения конкретно сконфигурирован, чтобы принимать информацию об оставшемся пространстве памяти, сообщаемую устройством хранения данных. В способе реализации блок 1101 получения конкретно сконфигурирован, чтобы получать значение количества раз пересылки запроса записи на устройство хранения данных и размер записанных данных, где значение количества и размер записаны в элемент таблицы потоков для таблицы потоков коммутатора, и вычислять оставшееся пространство памяти устройства хранения данных в соответствии с пространством памяти устройства хранения данных, количеством раз выполнения запроса записи и размером записанных данных.

[0111] Конкретно, в системе хранения объектных данных блок 1101 получения сконфигурирован, чтобы получать информацию об оставшемся пространстве памяти устройства хранения объектных данных, осуществляющего связь с коммутатором; и блок 1102 формирования, который сконфигурирован, чтобы в соответствии с информацией о пространстве памяти устройства хранения объектных данных формировать правило пересылки, соответствующее запросу записи объекта, где запрос записи объекта используется, чтобы записать объект в устройство хранения объектных данных, осуществляющее связь с коммутатором. В способе реализации блок 1101 получения конкретно сконфигурирован, чтобы принимать информацию об оставшемся пространстве памяти, сообщаемую устройством хранения объектных данных. В способе реализации блок 1101 получения конкретно сконфигурирован, чтобы получать значение количества раз выполнения пересылки запроса записи объекта на устройство хранения объектных данных и размер записанных данных, где значение количества и размер записаны в элемент таблицы потоков для таблицы потоков коммутатора, и вычислять оставшееся пространство памяти устройства хранения объектных данных в соответствии с пространством памяти устройства хранения объектных данных, количеством выполнений запроса записи объекта и размером записанного объекта.

[0112] Согласно контроллеру, представленному в варианте осуществления настоящего изобретения, с использованием программно-конфигурируемой сети контроллер формулирует оставшемуся пространству памяти каждого устройства хранения данных в системе хранения данных элемент таблицы потоков коммутатора и правило пересылки, соответствующее запросу записи, посредством этого реализуя балансировку нагрузки каждого устройства хранения данных и снижение информационного взаимодействия между устройствами хранения данных.

[0113] Согласно описанию предшествующих вариантов осуществления способа по настоящему изобретению, осуществление настоящего изобретения обеспечивает контроллер. Как показано на Фиг.11, контроллер включает в себя блок 1101 получения и блок 1102 формирования. В варианте осуществления настоящего изобретения блок 1101 получения сконфигурирован, чтобы получать информацию о потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные; и блок 1102 формирования сконфигурирован, чтобы согласно информации потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные, формировать правило пересылки, соответствующее запросу чтения. В способе реализации блок 1101 получения конкретно сконфигурирован для приема информации потоковой нагрузки, сообщаемой устройствами хранения данных, которые хранят запрошенные данные. В способе реализации блок 1101 получения конкретно сконфигурирован, чтобы получать значение количества раз выполнения пересылки запроса операции на устройства хранения данных, которые хранят запрошенные данные, где значение количества записывается в элементе таблицы потоков для таблицы потоков коммутатора, и запрос операции включает в себя запрос записи и запрос чтения.

[0114] Конкретно, в системе хранения объектных данных блок 1101 получения сконфигурирован, чтобы получать информацию потоковой нагрузки устройств хранения объектных данных, которые хранят запрошенный объект; и блок 1102 формирования, который сконфигурирован, чтобы согласно информации потоковой нагрузки устройств хранения объектных данных, которые хранят запрошенный объект, формировать правило пересылки, соответствующее запросу чтения объекта. В способе реализации блок 1101 получения конкретно сконфигурирован для приема информации потоковой нагрузки, сообщаемой устройствами хранения объектных данных, которые хранят запрошенный объект. В способе реализации блок 1101 получения конкретно сконфигурирован, чтобы получать значение количества раз выполнения пересылки запроса объектной операции на устройства хранения объектных данных, которые хранят запрошенный объект, где значение количества записывается в элементе таблицы потоков для таблицы потоков коммутатора, и запрос объектной операции включает в себя запрос записи объекта и запрос чтения объекта.

[0115] Согласно контроллеру, представленному в варианте осуществления настоящего изобретения, с использованием программно-конфигурируемой сети контроллер формулирует, согласно потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные в системе хранения данных, элемент таблицы потоков коммутатора и правило пересылки, соответствующее запросу чтения, посредством этого реализуя балансировку нагрузки каждого устройства хранения данных и снижение информационного взаимодействия между устройствами хранения данных.

[0116] Для конкретного функционального описания коммутатора и контроллера, описанных в предшествующих аппаратных исполнениях настоящего изобретения, ссылка может дополнительно делаться на варианты осуществления способа; кроме того, относительно сценария применения ссылка может делаться на схему архитектуры, показанную на Фиг.2, и описание и подробности повторно здесь не описываются.

[0117] Средний специалист в данной области техники может быть осведомлен, что в комбинации с примерами, описанными в вариантах осуществления, раскрытых в этом описании изобретения, блоки и этапы алгоритма могут быть реализованы электронными аппаратными средствами или комбинацией программного обеспечения и электронных аппаратных средств. Выполняются ли функции аппаратными средствами или программным обеспечением - зависит от конкретных применений и условий проектных ограничений технических решений. Специалист в данной области техники может использовать различные способы, чтобы реализовывать описанные функции для каждого конкретного применения, но не следует считать, что реализация выходит за рамки объема настоящего изобретения.

[0118] Специалисту в данной области техники может быть ясно, что с целью удобного и краткого описания относительно подробного рабочего процесса вышеупомянутой системы, устройства и блока, ссылка может делаться на соответствующий процесс в вышеизложенных вариантах осуществления способа, и подробности здесь снова не описываются.

[0119] В нескольких вариантах осуществления, приведенных в настоящей заявке, следует понимать, что раскрытые устройство и способ могут быть реализованы в других исполнениях. Например, описанный вариант осуществления устройства является просто примерным. Например, деление на блоки является просто делением на логические функции и может быть другим разбиением в фактической реализации. Например, несколько блоков или компонентов могут быть объединены или встроены в другую систему, или некоторые функции могут игнорироваться или не выполняться. Кроме того, изображенные или обсужденные взаимные связи или прямые связи или соединения связи могут быть реализованы через посредство некоторых интерфейсов. Косвенные связи или соединения связи между устройствами или блоками могут быть реализованы в электронной, механической или других формах.

[0120] Блоки, описанные как отдельные части, могут являться или не являться физически отдельными, и части, изображенные в виде блоков, могут являться или не являться физическими блоками, могут размещаться в одном месте, или могут быть распределенными на множестве блоков сети. Часть или все из блоков могут быть выбраны согласно фактической потребности реализовывать задачи решений из вариантов осуществления.

[0121] Кроме того, функциональные блоки в вариантах осуществления настоящего изобретения могут быть встроенными в один блок обработки, или каждый из блоков может существовать физически отдельно, или два или большее число блоков объединяются в один блок.

[0122] Когда функции реализуются в форме программно-реализованного функционального блока и продают или используют в качестве независимого продукта, функции могут сохраняться в читаемом компьютером носителе. На основании такого понимания, технические решения настоящего изобретения по существу, или часть, вносящая вклад в известный уровень техники, или часть технических решений могут быть реализованы в форме программного продукта. Программный продукт сохраняется в носителе данных и включает в себя несколько инструкций для предписания вычислительному устройству (которое может быть персональным компьютером, сервером или сетевым устройством) выполнять все или часть этапов способов, описанных в вариантах осуществления настоящего изобретения. Вышеуказанный энергонезависимый носитель данных включает в себя любой носитель, который может сохранять код программы, такой как флэш-память с интерфейсом USB, съемный накопитель на жестком диске, постоянная память (постоянное запоминающее устройство, ROM), магнитный диск или оптический диск.

[0123] Вышеизложенные описания являются просто конкретными способами реализации настоящего изобретения, но не предназначены ограничивать объем охраны настоящего изобретения. Любое изменение или замена, легко просчитанное специалистом в данной области техники в рамках технического объема, раскрытого в настоящем изобретении, должно находиться в рамках объема охраны настоящего изобретения. Следовательно, объем охраны настоящего изобретения должен соответствовать объему, определяемому формулой изобретения.

Похожие патенты RU2630377C1

название год авторы номер документа
ПРИВОДИМОЕ В ДЕЙСТВИЕ КОНТРОЛЛЕРОМ ОАМ ДЛЯ OPENFLOW 2012
  • Йоха Давид
  • Керн Андраш
RU2608879C2
БАЗОВЫЕ КОНТРОЛЛЕРЫ ДЛЯ ПРЕОБРАЗОВАНИЯ УНИВЕРСАЛЬНЫХ ПОТОКОВ 2012
  • Копонен Теему
  • Тхаккар Панкадж
RU2595540C9
СИСТЕМА СВЯЗИ, УСТРОЙСТВО УПРАВЛЕНИЯ, СПОСОБ И ПРОГРАММА СВЯЗИ 2011
  • Ямато Дзунити
RU2560821C2
СЕТЕВАЯ СИСТЕМА И СПОСОБ УПРАВЛЕНИЯ СЕТЬЮ 2011
  • Такасима Масанори
  • Касе Томохиро
  • Уено Хироси
  • Масуда Такахиса
  • Иун Сухун
RU2562438C2
Способ контроля доступа между устройствами в межмашинных сетях передачи данных 2018
  • Калинин Максим Олегович
  • Крундышев Василий Михайлович
  • Резединова Евгения Юрьевна
  • Зегжда Петр Дмитриевич
RU2714853C1
СЕТЕВАЯ СИСТЕМА И СПОСОБ УПРАВЛЕНИЯ ТРАФИКОМ СВЯЗИ 2011
  • Сато Сихоми
RU2576480C2
СЕТЕВАЯ СИСТЕМА, СПОСОБ, УСТРОЙСТВО И ПРОГРАММА 2013
  • Мидзукоси Ясухиро
  • Фудзинами Макото
  • Ямада Йосиюки
RU2616169C2
СЕТЕВАЯ СИСТЕМА И СПОСОБ МАРШРУТИЗАЦИИ 2011
  • Такасима Масанори
  • Касе Томохиро
RU2576473C2
СПОСОБ ПОТОКОВОЙ ПЕРЕДАЧИ ДАННЫХ МЕЖДУ СЕРВЕРОМ И КЛИЕНТОМ 2003
  • Уоррен Джозеф Р.
  • Зонг Мин
  • Фрелих Карл
  • Бонилла Николь А.
  • Новицки Роберт Р.
  • Дан Алек
  • Грэй Рональд Эрик
  • Хартуэлл Аарон
  • Годдард Стивен Ф.
  • Пауэр Брендан
RU2331920C2
Архитектура параллельной вычислительной системы 2016
  • Ермишин Владимир Викторович
RU2644535C2

Иллюстрации к изобретению RU 2 630 377 C1

Реферат патента 2017 года СПОСОБ И УСТРОЙСТВО ДЛЯ ОБРАБОТКИ ЗАПРОСА ОПЕРАЦИИ В СИСТЕМЕ ХРАНЕНИЯ ДАННЫХ

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении безопасности передачи данных в сети. Способ содержит этапы, на которых принимают посредством коммутатора запрос операции, причем запрос операции несет идентификационные данные запроса, и идентификационные данные запроса содержат по меньшей мере одно из информации о группе пользователей и информации о стратегии хранения; запрашивают посредством коммутатора в соответствии с идентификационными данными запроса таблицу потоков коммутатора, чтобы получить элемент таблицы потоков, соответствующий запросу операции; и пересылают посредством коммутатора запрос операции на целевое устройство хранения данных среди упомянутых устройств хранения данных согласно правилу пересылки в этом соответствующем элементе таблицы потоков. 12 н. и 15 з.п. ф-лы, 11 ил.

Формула изобретения RU 2 630 377 C1

1. Способ обработки запроса операции в системе хранения данных, причем система хранения данных содержит контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован формулировать и доставлять таблицу потоков коммутатора; при этом способ содержит этапы, на которых:

принимают посредством коммутатора запрос операции, причем запрос операции несет идентификационные данные запроса, и идентификационные данные запроса содержат по меньшей мере одно из информации о группе пользователей и информации о стратегии хранения;

запрашивают посредством коммутатора в соответствии с идентификационными данными запроса таблицу потоков коммутатора, чтобы получить элемент таблицы потоков, соответствующий запросу операции; и

пересылают посредством коммутатора запрос операции на целевое устройство хранения данных среди упомянутых устройств хранения данных согласно правилу пересылки в этом соответствующем элементе таблицы потоков.

2. Способ по п.1, в котором:

когда идентификационные данные запроса являются информацией о группе пользователей, бит идентификации виртуальной локальной сети в запросе операции несет информацию о группе пользователей, и бит идентификации виртуальной локальной сети в поле заголовка пакета упомянутого соответствующего элемента таблицы потоков несет информацию о группе пользователей; или

когда идентификационные данные запроса являются информацией о стратегии хранения, бит типа услуги по протоколу Internet в запросе операции несет информацию о стратегии хранения, и бит типа услуги по протоколу Internet в поле заголовка пакета упомянутого соответствующего элемента таблицы потоков несет информацию о стратегии хранения; или

когда идентификационные данные запроса являются информацией о группе пользователей и информацией стратегии хранения, бит идентификации виртуальной локальной сети в запросе операции несет информацию о группе пользователей, бит типа услуги по протоколу Internet в запросе операции несет информацию о стратегии хранения, бит идентификации виртуальной локальной сети в поле заголовка пакета упомянутого соответствующего элемента таблицы потоков несет информацию о группе пользователей, и бит типа услуги по протоколу Internet в поле заголовка пакета упомянутого соответствующего элемента таблицы потоков несет информацию о стратегии хранения.

3. Способ по п.1 или 2, в котором когда запрос операции является запросом чтения, правило пересылки в упомянутом соответствующем элементе таблицы потоков формулируется контроллером согласно потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные.

4. Способ по п.3, дополнительно содержащий этап, на котором обновляют посредством коммутатора количество раз, которое запрос чтения пересылается на целевое устройство хранения данных, причем данное количество раз записывается в упомянутый соответствующий элемент таблицы потоков.

5. Способ по п.1 или 2, в котором когда запрос операции является запросом записи, правило пересылки в упомянутом соответствующем элементе таблицы потоков формулируется контроллером согласно оставшемуся пространству памяти устройств хранения данных.

6. Способ по п.5, дополнительно содержащий этап, на котором обновляют посредством коммутатора количество раз, которое запрос записи пересылается на целевое устройство хранения данных, причем данное количество раз записывается в упомянутый соответствующий элемент таблицы потоков.

7. Способ формирования правила пересылки в элементе таблицы потоков, причем способ применяется к системе хранения данных, система хранения данных содержит контроллер, коммутатор и устройство хранения данных, осуществляющее связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован формулировать и доставлять таблицу потоков коммутатора; при этом способ содержит этапы, на которых:

получают посредством контроллера информацию об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором; и

формируют посредством контроллера в соответствии с информацией об оставшемся пространстве памяти устройства хранения данных правило пересылки, соответствующее запросу записи, причем запрос записи используется, чтобы записать данные в устройство хранения данных, осуществляющее связь с коммутатором.

8. Способ по п.7, в котором получение посредством контроллера информации об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором, конкретно содержит этап, на котором принимают посредством контроллера информацию об оставшемся пространстве памяти, сообщаемую устройством хранения данных.

9. Способ п.7, в котором получение посредством контроллера информации об оставшемся пространстве памяти устройства хранения данных, осуществляющего связь с коммутатором, конкретно содержит этапы, на которых:

получают посредством контроллера количество раз, которое запрос записи пересылается на устройство хранения данных, и размер записанных данных, причем упомянутые количество раз и размер записываются в элемент таблицы потоков в таблице потоков коммутатора; и

вычисляют посредством контроллера оставшееся пространство памяти устройства хранения данных в соответствии с пространством памяти устройства хранения данных, количеством раз выполнения запроса записи и размером записанных данных.

10. Способ формирования правила пересылки в элементе таблицы потоков, причем способ применяется к системе хранения данных, система хранения данных содержит контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован формулировать и доставлять таблицу потоков коммутатора; при этом способ содержит этапы, на которых:

получают посредством контроллера информацию потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные; и

формируют посредством контроллера согласно информации потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные, правило пересылки, соответствующее запросу чтения.

11. Способ по п.10, в котором получение посредством контроллера информации потоковой нагрузки для устройств хранения данных, которые хранят запрошенные данные, конкретно содержит этап, на котором принимают посредством контроллера информацию потоковой нагрузки, сообщаемую устройствами хранения данных, которые хранят запрошенные данные.

12. Способ по п.10, в котором получение посредством контроллера информации потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные, конкретно содержит этап, на котором получают посредством контроллера количество раз, которое запрос операции пересылается на устройства хранения данных, которые хранят запрошенные данные, причем данное количество раз записывается в элемент таблицы потоков в таблице потоков коммутатора, и запрос операции содержит запрос записи и запрос чтения.

13. Коммутатор, причем коммутатор применяется к системе хранения данных, и система хранения данных содержит контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован формулировать и доставлять таблицу потоков коммутатора; при этом коммутатор содержит:

приемный блок, сконфигурированный принимать запрос операции, причем запрос операции несет идентификационные данные запроса, и идентификационные данные запроса содержат по меньшей мере одно из информации о группе пользователей и информации о стратегии хранения;

блок запроса, сконфигурированный запрашивать в соответствии с идентификационными данными запроса таблицу потоков коммутатора, чтобы получить элемент таблицы потоков, соответствующий запросу операции; и

блок пересылки, сконфигурированный пересылать запрос операции на целевое устройство хранения данных среди упомянутых устройств хранения данных согласно правилу пересылки в этом соответствующем элементе таблицы потоков.

14. Коммутатор по п.13, в котором когда запрос операции является запросом чтения, правило пересылки в упомянутом соответствующем элементе таблицы потоков формулируется контроллером согласно потоковой нагрузке устройств хранения данных, которые хранят запрошенные данные.

15. Коммутатор по п.13, в котором когда запрос операции является запросом записи, правило пересылки упомянутого соответствующего элемента таблицы потоков формулируется контроллером согласно оставшемуся пространству памяти устройств хранения данных.

16. Контроллер, причем контроллер применяется к системе хранения данных, и система хранения данных содержит контроллер, коммутатор и устройство хранения данных, осуществляющее связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован формулировать и доставлять таблицу потоков коммутатора; при этом контроллер содержит:

блок получения, сконфигурированный получать информацию об оставшемся пространстве памяти в устройстве хранения, осуществляющем связь с коммутатором; и

блок формирования, сконфигурированный формировать, в соответствии с информацией о пространстве памяти устройства хранения данных, правило пересылки, соответствующее запросу записи, причем запрос записи используется, чтобы записать данные в устройство хранения данных, осуществляющее связь с коммутатором.

17. Контроллер по п.16, в котором блок получения конкретно сконфигурирован для приема информации об оставшемся пространстве памяти, сообщаемой посредством устройства хранения данных.

18. Контроллер по п.16, в котором блок получения конкретно сконфигурирован с возможностью: получать количество раз, которое запрос записи пересылается на устройства хранения данных, и размер записанных данных, причем упомянутые количество раз и размер записаны в элемент таблицы потоков в таблице потоков коммутатора, и

вычислять оставшееся пространство памяти устройства хранения данных в соответствии с пространством памяти устройства хранения данных, количеством выполнений запроса записи и размером записанных данных.

19. Контроллер, причем контроллер применяется к системе хранения данных, и система хранения данных содержит контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован формулировать и доставлять таблицу потоков коммутатора; и контроллер содержит:

блок получения, сконфигурированный получать информацию потоковой нагрузки устройств хранения данных, которые хранят запрошенные данные; и

блок формирования, сконфигурированный формировать, согласно информации потоковой нагрузки устройств хранения данных, которые сохраняют запрошенные данные, правило пересылки, соответствующее запросу чтения.

20. Контроллер по п.19, в котором блок получения конкретно сконфигурирован получать информацию потоковой нагрузки, сообщаемую устройствами хранения данных, которые хранят запрошенные данные.

21. Контроллер по п.19, в котором блок получения конкретно сконфигурирован получать количество раз, которое запрос операции пересылается на устройства хранения данных, которые хранят запрошенные данные, причем данное количество раз записывается в элемент таблицы потоков в таблице потоков коммутатора, и запрос операции содержит запрос записи и запрос чтения.

22. Коммутатор, причем коммутатор применяется к системе хранения данных, и система хранения данных содержит контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован формулировать и доставлять таблицу потоков коммутатора; и коммутатор содержит центральный процессор и память, причем центральный процессор и память соединены с использованием шины, память сконфигурирована хранить машинные команды, и центральный процессор исполняет машинные команды, сохраненные в памяти, чтобы реализовывать способ по п.1.

23. Контроллер, причем контроллер применяется к системе хранения данных, и система хранения данных содержит контроллер, коммутатор и устройство хранения данных, осуществляющее связь с коммутатором, причем контроллер осуществляет связь с коммутатором и контроллер сконфигурирован формулировать и доставлять таблицу потоков коммутатора; и контроллер содержит центральный процессор и память, причем центральный процессор и память соединены с использованием шины, память сконфигурирована хранить машинные команды, и центральный процессор исполняет машинные команды, сохраненные в памяти, чтобы реализовывать способ по п.7.

24. Контроллер, причем контроллер применяется к системе хранения данных, и система хранения данных содержит контроллер, коммутатор и устройства хранения данных, осуществляющие связь с коммутатором, контроллер осуществляет связь с коммутатором и контроллер сконфигурирован формулировать и доставлять таблицу потоков коммутатора; и контроллер содержит центральный процессор и память, причем центральный процессор и память соединены с использованием шины, память сконфигурирована хранить машинные команды, и центральный процессор исполняет машинные команды, сохраненные в памяти, чтобы реализовывать способ по п.10.

25. Энергонезависимый читаемый компьютером носитель данных, причем носитель данных компьютера хранит машинные команды и сконфигурирован реализовывать способ по п.1, когда компьютер исполняет машинные команды.

26. Энергонезависимый читаемый компьютером носитель данных, причем носитель данных компьютера хранит машинные команды и сконфигурирован реализовывать способ по п.7, когда компьютер исполняет машинные команды.

27. Энергонезависимый читаемый компьютером носитель данных, причем носитель данных компьютера хранит машинные команды и сконфигурирован реализовывать способ по п.10, когда компьютер исполняет машинные команды.

Документы, цитированные в отчете о поиске Патент 2017 года RU2630377C1

CN 101471882 A, 01.07.2009
CN 102647362 A, 22.08.2012
US 8392586 B2, 05.03.2013
CN 102622185 A, 01.08.2012.

RU 2 630 377 C1

Авторы

Гун Хао

Даты

2017-09-07Публикация

2013-08-31Подача