IOR
IOR (англ. Interoperable object reference ссылка на интероперабельный объект) — в распределенном программном обеспечении ссылка на объект технологий CORBA или RMI-IIOP, содержащая в себе полный набор информации, необходимой, чтобы обеспечить доступ к объекту и использовать его[1][2].
Представляет собой строковую структуру, в которой содержится различного рода информация. Чаще всего это IP-адрес и порты интерфейса, на котором прослушивается сервер, название и идентификатор класса и, возможно, методов объекта, которые в данный момент будут обработаны. Передача IOR происходит после установления связи между двумя частями распределенного приложения для инициализации передачи исполняемого кода и данных объекта.
В реализациях, которые используют распределённые объекты, каждый инстанс объекта может снабжаетьс собственным IOR[3].
IOR в CORBA
Представляет собой поток октетов, кодированный в соответствии с общим представлением данных, в котором содержится зависимая от транспорта информация об адресуемом объекте[4]. Структура IOR имеет следующий вид:
struct IOR {
string type_id;
sequence <TaggedProfile> profiles;
};
Здесь type_id — идентификатор, используемый для публикации ссылки, а profiles — последовательность прикреплённых к ссылке профилей:
typedef unsigned long ProfileId;
const ProfileId TAG_INTERNET_IOP = 0;
const ProfileId TAG_MULTIPLE_COMPONENTS = 1;
const ProfileId TAG_SCCP_IOP = 2;
struct TaggedProfile {
ProfileId tag;
sequence <octet> profile_data;
};
Здесь profile_data содержит инкапсулированный профиль. Не существует единого формата профиля IOR. Профили включают, по крайней мере, три элемента:
- Номер версии спецификации поддерживаемого сервером транспортного протокола.
- Адрес конечной точки для используемого транспортного протокола.
- Объектный ключ (object_key), используемый агентом в конкретном адресе конечной точки для идентификации объекта.
См. также
Примечания
- ↑ C.R. Ozansoy, A. Zayegh, A. Kalam. Interoperable CORBA middleware design for substation communication systems // 2004 Eighth IEE International Conference on Developments in Power System Protection. — 2004-04. — Т. 2. — С. 705–708 Vol.2. — doi:10.1049/cp:20040220. Архивировано 24 октября 2021 года.
- ↑ A Flexible and Extensible Object Middleware CORBA and Beyond Архивная копия от 1 июля 2024 на Wayback Machine Franz J. Hauck, Rüdiger Kapitza, Hans P. Reiser, Andreas I. Schmied Distributed Systems Lab, University of Ulm, Germany Department of Computer Science, University of Erlangen-Nürnberg, Germany 2005
- ↑ INTEROPERABILITY PERFORMANCE OF CORBA ARCHITECTURE Franco Fiore Massimo Mercati RTO MEETING PROCEEDINGS MP-MSG-022 C3I and Modelling and Simulation (M&S) Interoperability (Interopérabilité entre le C3I et la modélisation et la simulation (M&S)) Papers presented at the NATO RTO Modelling and Simulation Conference held in Antalya, Turkey, 9-10 October 2003. p 191
- ↑ Michi Henning. Binding, migration, and scalability in CORBA (англ.) // Communications of the ACM. — 1998-10. — Vol. 41, iss. 10. — P. 62–71. — ISSN 0001-0782. — doi:10.1145/286238.286249. Архивировано 1 июля 2024 года.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.