
"Collect-B"시스템 및 ECU의 개발, 구현 및 운영을위한 부서 간 팀. 그들은 앉아 있습니다 (왼쪽에서 오른쪽으로) : p / c Zhukov Evgeny, 개발 박사 Nikolaev Andrey, Ved. 프로그래머 Sereda Valentina; 프로그래머 Elena Karpushenko; 비용 : Ved. 프로그래머 Aleksey Kosov, Vladimir Gavrilov 소장, 수집 -B 및 ECU 시스템 운영 관리자, Alim Yusupov, 스토리지 서브 시스템 개발 책임자 Aksyuta Gennady. 항공 우주 센터 Plesetsk, 1998
90 년대 Plesetsk 코스모스의 지상 측정 단지에 의한 시스템“Collection-V”및“단일 센터에서 관리”(ECU) 용 소프트웨어 제작.
소개
이 기사의 목적은 전략적 탄도 미사일을 테스트하는 데 사용되는 소프트웨어 개발에서 비밀의 베일을 여는 것입니다. 이 기사는 방어와 우주를 위해 일했던 소위 풍뎅이와 1990 년대의 개발자들로부터 소비에트 개발자 세대의 연속성을 간략하게 보여줍니다. 이 문서에는 서부 소프트웨어의 유명한 개발자와“알려지지 않은 군인”과 새로운 모습의 고상한 샤라 카스에 대한 링크가 포함되어 있습니다. . 이 기사는 소프트웨어를 만들 때 추론을 보여주고 1990 년대에 서구의 소비자 소프트웨어보다 러시아와 우크라이나에서 군사 소프트웨어의 우월성을 생각하는 개별 계층을 처음으로 보여줍니다.
따라서 1991 년에 1 년 후 [XNUMX] 이후에 나온 엔터프라이즈 응용 프로그램 통합 패턴에 관한 책은 아직 작성되지 않았습니다. 통합을 위해 가장 중요한 것은 암호화 장비로 보호되는 전신 및 전화선을 통해 전송되는 이기종 메시지 여야한다는 이해에 의존해야했습니다. 프로토콜 관례의 구성은 현재 관례대로 정보 집중 장치에 적용되는 개방형 시스템의 상호 작용을위한 참조 모델을 기반으로 수행되었습니다.

EMBOS를 수정하는 과정에서 IVS의 단순화와 범용 요소 (정보 허브) 로의 복잡성 이전으로 인해 스위칭 요소는 아키텍처의 복잡성을 필요로했으며 처음부터 예상했습니다. KI 소프트웨어에는 그림과 같이 추가 수준 (적용, 대표, 세션 및 전송)이로드되었습니다.

이기종 정보 전송 및 처리 네트워크와 측정 시스템 (IS)과의 통합을위한 정보 집중 기 소프트웨어 레벨
정보 집중 기의 7 가지 레벨 각각이 어떻게 설계되었는지에 대한 설명은 기사에 맞지 않을 것이므로 가장 흥미로운 레벨을 보여줄 가치가 있습니다.
따라서 물리적 계층에 대해 간단히 말하면 커넥터와 케이블이라는 것을 알 수 있습니다. 예를 들어, Plesetsk Cosmodrome의 CC와 VEGUTA Vorkuta IS 사이에는 1993 년 처음으로 두 집중 장치간에 정보를 교환 할 수있는 암호화 통신 회선이있었습니다. 폐쇄 형 통신 회선은 데이터 채널 (AKD)을 종료하기위한 장비로서 내부 장비에 의해 제공되었다.

커뮤니케이션 연구소 (Marfino) :

Solzhenitsyn의 매혹적인 소설“In the First Circle”에서 죄수들이 어떻게 일하면서 비밀 전화를 만들 었는지 알 수 있습니다. 이 소설의 영화 적응은 YouTube에 있습니다 [5]. 시간이 부족한 상황에서 저는“sharashka”엔지니어의 과학적 노동 조직의 가장 특징적인 순간을 살펴볼 것을 권장합니다 [6-10].
우리는 Sharashka의 소련 포로들의이 비극적 인 일을 만져야했다. 우리는 그것이 어떤 종류의 장비인지 또는 어떻게 작동했는지 알 수조차 없었습니다. 참여하지 않고 케이블을 장비에 연결할 수만있었습니다. 작동하면 성공했지만 작동하지 않으면 운명이 아니므로 프로젝트가 실패합니다.
이 작업은 여러 가지 요인으로 인해 복잡해졌습니다. 그러나 Plesetsk에서 Mikhail Mokrinsky와 Igor Shipsha는 "조용히"케이블을 전송하고 두 개의 허브를 연결하며 시행 착오를 사용하여 폐쇄 라인을 통해 데이터를 전송하는 방법을 찾았으며 Nikolaev는 폐쇄 레벨 장비를 전송 레벨로 강제하는 특수한 "모니터링 프로토콜"을 개발했습니다. 통신은 두 허브 간의 실패 및 동기화 손실로부터 복구합니다. 그러나 모든 것이 그렇게 평화 롭고 부드럽게 진행된 것은 아닙니다. Norilsk에서 군인은 Zaitsev와 같이 케이블이 정보 폐쇄 장비로 들어가야 할 위치를 고수 할 수 없었습니다. 그런 다음 Nikolaev Andrey와 Kravchenko Anatoly는 비밀 방을 두 드렸고 문이 열려있을 때 방으로 파열하여 전투기를 밀어 내고 케이블을 비밀 전화 장비에 연결했습니다. 모든 것이 효과가있었습니다. 성공했습니다. 그리고 다음날 나는 FSB에 설명을 써야했다. 그러나 마르 피노에서 범죄자들을 감옥에 보낼 때가 아니었다. 그리고 신에게 감사합니다!

비밀 전화 장비“내부”[11]
그 결과, 완전한 어댑터 세트가 필요한 것은 아니기 때문에 허브 비용을 절감하는 어댑터가 개발되었습니다. 이것은 이미 Nikolaev, Mokrinsky 및 Shipsha의 개인 이니셔티브였습니다.

세션 레벨 소프트웨어 구현 알고리즘
기사의 틀 안에서 모든 것을 설명하는 것은 불가능하므로 독자를 놀라게 할 수있는 무언가를 작성하는 것이 합리적입니다.
개방형 시스템 관계 (XNUMX 번째 세션, XNUMX 번째 대표, XNUMX 번째 적용)의 관계에 대한 기본 참조 모델의 XNUMX 가지 상위 레벨은 어플리케이션 지향 레벨로 간주됩니다.
어떤 책을 보더라도 세션 수준이 실제로 설명되어 있지 않다는 것을 알 수 있습니다. 문헌의 세션 수준은 가장 논란의 여지가 있습니다. 한편으로 저자들은 할 말이없는 것 같습니다. 예 : V.G. Olifer와 N.A. Olifer [13]는이 불완전한 8 줄을 가져갔습니다! 반면, 세션 수준에 대한 설명은 본질적으로 학문적이다 [14] : F. Halsall은 데이터 전송에 이중성이 없으며,“토큰”개념은 OS에 구현 된 실제 데이터 교환 메커니즘이 없기 때문에 소프트웨어를 합리적인 시간 내에 구현할 수 없습니다. 소베 토프 B. 야 Yakovlev S.A. 실제로 이러한 수준은 복잡성으로 인해 실현되지 않는다고 생각한다 [15].
방법론이 결여되어 인터넷 내에서만 작업하는 프로그래머가 세 가지 수준 (세션, 프리젠 테이션 및 응용 프로그램)이 하나의 응용 프로그램 수준으로 결합 된이 어려운 상황에서 벗어날 수있는 방법을 찾았습니다 [16]. 1991 년 소련에는 어떤 종류의 인터넷이 존재합니까? ECU의 Collection-V 시스템의 세션 레벨과 Vega 시스템의 PAS 제어는 테스트 된 제품에 대한 특정 작업 세션을 반영하여 별도의 레벨로 개발되었습니다. "Collect-B"시스템에서 세션 레벨을 구현하는 방법은 의미있는 궤도 정보를위한 특수 엔벨로프 (envelope)의 작성을 기반으로합니다.
전통적으로 세션 수준은 자체적으로 네트워크 소프트웨어에 대한 모든 호출을 지역화하여 다른 프로그램에 네트워크 세부 사항으로 이동하지 않고도 정보를 교환 할 수있는 기본 세트를 제공합니다. 프리미티브의 속성에는 탄도 미사일 유형 (제품 번호), 테스트 요일, 날짜 및 시간 동안 로켓 발사 일련 번호, 측정 도구의 고유 번호로 테스트를 식별 할 수있는 속성이 포함됩니다. 세션 레벨 프리미티브를 사용하면 외부 궤적 측정에 대한 완전한 세션 정보를 제공 할 수 있습니다.
세션 레벨의 구현을 위해 프리미티브 라이브러리가 구성되었습니다. 다음과 같은 최소한의 프리미티브 세트가 여기에 포함되었습니다. b) 데이터 블록을 보낸다. c) 세션을 닫는다.
"Collection-B"시스템에서이 세 가지 기본 요소를 사용하면 주변 장치에서 수집 센터로 정보를 전송할 수 있습니다. 이들 모두는 언어 "C"로 된 라이브러리 형태로 만들어지며 번역 과정에서 데이터를 네트워크로 전송하기위한 프로그램에 연결됩니다. 따라서 전송을 완료하기 위해 프로그램은 먼저 OPEN 프리미티브에 의한 세션 열기를 수행합니다. 그런 다음 각 데이터 블록이 봉투에 캡슐화되어 네트워크로 전송됩니다. 콜렉션 센터에서 정보 전송이 끝나면 기본 CLOSE를 전송하여 세션이 닫힙니다.

세션 수준의 KI 소프트웨어 관리 관리 기술
관리 관리는 UNIX 운영 체제의 기능, 즉 UNIX의 기능인 메시지 큐, 가상 채널 및 fifo 파일을 사용합니다. "세션 설정"기본 요소는 네트워크의 두 끝에서 fifo 파일을 구성하고 메시지를 보내기 위해 가상 줄을 제공합니다. 발사는 운영자에 의해 이루어지고 그에 의해 제어됩니다. 탄도 미사일 시험을위한 세션을 확립하기 위해, TCP / IP 프로토콜의 동작은 초기에 핑 프로그램으로 시험함으로써 점검된다. 다음으로, 데이터 블록 전송 프리미티브는 다른 파일과 동일한 방식으로 fifo 파일에 기록됩니다. 그리고 전송의 다른 쪽 끝에있는 UNIX 네트워킹 도구는이 정보를 수신자 시스템의 트윈 fifo 파일로 제공합니다. 채널 복구는 채널 연결을 끊었다가 다시 설정하는 작업을 통해 수행됩니다. 채널이 없다는 것은 두 개의 채널을 포함하는 테스트 패키지에 대한 엔드-투-엔드 승인으로 (그리고 거기에서) 명확 해집니다. 세션이 종료되면 네트워크의 반대쪽에있는 fifo 파일 간의 연결이 끊어집니다. 모든 절차는 행정 관리를위한 프로그램으로 수행되며 적용 및 대표 수준의 커뮤니케이션 프로그램과 분리됩니다. Collect-B 시스템의 세션 레벨 소프트웨어와 ECU에서 Vega 시스템 컴플렉스를 관리하기위한 소프트웨어가 아래 다이어그램에 표시되어 있습니다. ECM 워크 스테이션의 PC 디스플레이 인 세션 수준의 관리 관리를 위해 별도의 가상 터미널이 할당됩니다. APM APC는 큐, 파일 파일, 신호, 공유 메모리 영역 등 전체 프로세스 간 교환 메커니즘을 사용합니다. 이는 단일 페이지 모드로 화면에 표시하는 데 특히 유용합니다.

Collect-V 시스템의 원격 정보 집중 기용 소프트웨어

시스템 "Collection-V"의 Cosmodrome Plesetsk 소프트웨어 센터-세션 레벨

소프트웨어 수집 센터, 소프트웨어 ARM ECU-세션 레벨
메시지 전송의 긴급 성을 보장하는 방법론
"Collect-B"시스템은 궤도 측정 데이터를 전송합니다. 이와 병행하여 "ECU"시스템의 제어 명령이 사용됩니다. 따라서 긴급한 수준으로 메시지를 분리해야했습니다. 1993 년, Stepanov와 Meng Lee가 STL 라이브러리를 아직 만들지 않았기 때문에 Andrei Nikolaev는 Valentina Gordienko와 함께 다른 긴급한 메시지를 선택할 수있는 메커니즘을 만드는 일반적인 경로를 사용하는 체계를 제안하고 구현했습니다. 및 정보 메시지의 중간 축적. 동시에, 모든 작업은 제조업체와 운영 조직 내부에 남아 있어야합니다. 메시지 선택은 긴급성에 따라 메시지 전송을 보장합니다. 긴급한 데이터 블록은 항상 덜 긴급한 블록보다 우선합니다. 이것이 어떻게 제공되었는지 고려하십시오.
ECU의“Collect-B”시스템과 IS의“Vega”IS 제어의 PAS는 데이터 블록을 교환하는 과정에서 두 가지 긴급 성을 사용합니다. 긴급의 첫 번째 클래스에는 소위 "긴급 데이터"가 포함됩니다. 여기에는 주로 관리 팀과 이러한 팀의 영수증이 포함됩니다. 이를 위해 최대 허용 전송 지연이 결정됩니다. 지연 허용 범위를 벗어나면 팀이 늦었고 더 이상 관련이없는 것으로 간주되므로 네트워크에서 제거해야합니다. 긴급한 데이터 외에도 영구적 인 (정상적인) 데이터라는 두 번째 종류의 메시지가 있습니다. 그들은 길을 잃어서는 안되지만 긴급하게 지나가는 것을 방해해서는 안됩니다. 전송 계층의 서비스에 대한 액세스 포인트의 입구에서 링 버퍼 메커니즘을 사용하면 전송 경로를 정상 데이터 경로 및 제어 신호 경로로 가상 분리 할 수있다. 전송 계층에서 나올 때, 추가 라우팅을 위해 전송 블록에서 데이터 세션 수준으로 정보 블록을 올리는 컴퓨터에서 다른 경로 정보 수집 센터 (예 : 외부 경로 정보 수집 센터)에서 흐르는 지점에 링 버퍼가 필요합니다. 또는 가공.
링 버퍼는 "선착순"이라는 원칙에 따라 메시지 대기열을 형성합니다. 순환 버퍼의 작동 원리에 대한 이해를 높이기 위해 블록의 길이가 같다고 가정하여 상황을 단순화합니다. 그런 다음 버퍼의 작동은 두 가지 인덱싱 변수에 의해 결정됩니다. in-요소가 작성된 위치를 나타내고 out-추출되는 위치를 나타냅니다. 이 배열의 색인 작성에 제한이없는 경우에 이상적입니다. 그러나 유한 배열도 매우 적합합니다. 결국 읽기 블록이 더 이상 사용되지 않으면. 따라서 그 장소를 재사용 할 수 있습니다.

세션 객체의 단방향 상호 작용 제안 및 구현 방법
링 버퍼는 긴급한 데이터 스트림에 "창"이 나타날 때까지 영구적 인 데이터 블록을 임시로 저장하는 데 사용됩니다. 버퍼의 깊이는 필요한 경우 한 세션의 "정상적인"정보를 수용 할 수 있어야합니다. 버퍼 볼륨이 클 수 있기 때문에 파일에 넣고 디스크 드라이브에 저장할 수 있습니다. 이를 통해 공통 경로에서 긴급 및 "정상"데이터 흐름을 순차적으로 그룹화하여 긴급 데이터에 우선 순위를 부여 할 수 있습니다. 데이터 정렬 프로세스의 알고리즘 "Collect-B"시스템 및 ECU 문서에서 알고리즘은 의사 코드 형식으로 설명됩니다. 따라서 의사 코드에서 다른 긴급 메시지를 처리하는 알고리즘도 제공합니다.

긴급하고 무제한적인 네트워크 메시지를 선택하는 과정의 의사 코드 : n-현재 버퍼에있는 요소의 수; N은 버퍼의 크기이며; X-메시지 내용 [/ center]
결론
"Collect-B"시스템에서 작업하고 ECU가 성공적으로 완료되었습니다. 수십 개의 미사일 테스트에 정보가 적시에 제공되었습니다. 미사일의 비행 경로가 구축되었으므로, 육상 및 해상에서 전략적인 탄도 미사일 발사 결과를 신속하게보고하여 로켓이 탑재 된 우주선의 발사 경로를보고 할 수있었습니다.
ECU 시스템은 테스트를위한 IS "Vega"준비와 지상 측정 단지의 적응 제어 측면에서 성공적으로 기능했습니다.
개발 된 시스템은 Plesetsk 우주에서 성공적으로 운영되어 핵 검을 날카롭게했다. 1998 년 당시 "Collect-B"IVS 및 ECU 시스템에 포함 된 측정 시스템은 다음과 같습니다.

Plesetsk 우주의 이익을 위해 운영되고 Sborn-V 시스템과 ECU에 통합 된 측정 포인트
“Collect-B”시스템과 ECU의 개발로 우크라이나에서 정보 시스템의 생성 및 구현에 새로운 방법을 확장 할 수있었습니다. 여기에는 수문 기상학 획득 시스템, 지진 센서 모니터링,“우크라이나의 탐색 및 임시 지원 시스템”, Life 네트워크의 이기종 스위치 통합 등이 포함됩니다.
냉전은 공식적으로 몰타에서 고르바초프의 항복과 소련의 붕괴로 끝났다. 그러나 여전히 냉전의“당파 자들”이 있었다. 그 당시에는 모든 것이 실에 매달려 있었지만 우리는 관리했습니다.
소스
1. Hop G., Wolf B. Enterprise 애플리케이션 통합 패턴. 메시징 기반 솔루션을 설계, 구축 및 배포합니다. M .: Williams, 2016.
2. https://ru.wikipedia.org/wiki/NII_Svyazi.
3. https://topos.memo.ru/en/node/57. 마사 샤라 시카. 주소 : Moscow, st. 식물, d. 25.
4. https://sky-hexe.livejournal.com/383686.html. Marfinsky 건축 혼란.
5. https://www.youtube.com/watch?v=dxEOZtyHHhg. 영화 "첫 번째 서클에서"
6. https://www.youtube.com/watch?v=FtfZAVZmH3E. 첫 번째 원에서 트레일러.
7. https://www.youtube.com/watch?v=AWwaCwtsCpI&t=117s. "첫 번째 서클에서." 개발시기에 대한 Abakumov와의 대화.
8.https : //www.youtube.com/watch? v = 6CZQhKtww6I & t = 64s. "첫 번째 서클에서." Abakumov와의 타이밍에 대해 수석 개발 엔지니어와 대화합니다.
9.https : //www.youtube.com/watch? v = 1RuFU1FHAI0 & t = 20s. "첫 번째 서클에서." Abakumov의 암호화 정보 폐쇄 장비 개발 문제에 대한 설명.
10. https://www.youtube.com/watch?v=9pt6UFQihUo. Sharashka에서 공학의 비전.
11. https://hodor.lol/post/50778/ 옛날 옛적에 "일급 비밀".
12. 우크라이나 No. 25664 A, G06f13 / 00의 특허. Pristri 영수증 / Mokrinsky M.O., Nikolaev A.V., Shipsha I.M. -제 97052331 호; 주장 21.05.1997 년 30.10.1998 월 6 일; publ. XNUMX 년 XNUMX 월 XNUMX 일, 황소. XNUMX 번