
حمولة صغيرة للنقل عبر LOKI - توفر إمكانيات نقل ملفات ثنائية الاتجاه عالية السرعة عبر القناة الافتراضية (Virtual Channel).
تم إصداره كمصدر مفتوح بواسطة NCC Group Plc - http://www.nccgroup.com/
تم التطوير بواسطة Dave Spencer، david [dot] spencer [at] nccgroup [dot] com
http://www.github.com/nccgroup/Sleipnir
أُصدر بموجب رخصة AGPL، انظر LICENSE لمزيد من المعلومات
Sleipnir هو ملف تنفيذي صغير مصمم للرفع السريع عبر أسلوب إرسال المفاتيح (send keys) داخل Loki، ومن هنا عدم وجود أيقونة له. طُوّر Sleipnir لتوفير نقل ملفات ثنائي الاتجاه بسرعة أكبر بكثير مما يمكن أن توفره طريقة send keys، وذلك باستخدام القنوات الافتراضية. يجب إنشاء قناة افتراضية على جانب الخادم ثم الاتصال بها من جانب العميل؛ وأي بيانات تمر عبر هذه القنوات يتم إرسالها عبر اتصال RDP. دالة .NET AxMsRdpClient7NotSafeForScripting.SendOnVirtualChannel يمكنها إرسال بيانات نصية فقط بطول محدود، ولهذا السبب يتم تقسيم الملفات إلى قطع بحجم 1k وترميزها بنظام base64 في جهة، ثم فك ترميزها إلى تدفق (stream) في الجهة الأخرى.
Sleipnir مصمم للاستخدام مع Loki (https://github.com/nccgroup/loki) وFenrir (https://github.com/nccgroup/Fenrir)
يتكون Sleipnir من نموذج يحتوي على شريط تقدم وزرّين:
Receive File – يعيّن Sleipnir للاستماع للأحداث على القناة الافتراضية Loki1
Send File – يسمح للمستخدم بتحديد ملف على سطح مكتب RDP لإرساله مرة أخرى إلى العميل.
لإرسال ملف من المضيف المحلي إلى خادم RDP، يجب على المستخدم النقر على زر Receive File في Sleipnir، ثم النقر على “Sleipnir” -> “Send File On Virtual Channel” داخل واجهة Loki، وبعدها يُطالب المستخدم بتحديد ملف. بعد ذلك، يقرأ Sleipnir الملف بمقدار 1k في كل مرة، ويقوم بترميزه بنظام base64 وإرساله إلى القناة الافتراضية. يكتشف معالج الأحداث داخل Sleipnir الكتابة، ويفك ترميزها ويكتبها إلى ملف. يتم إنشاء الملف في نفس المجلد الذي يوجد فيه Sleipnir مع الاحتفاظ باسم الملف الأصلي. لإرسال ملف من خادم RDP مرة أخرى إلى العميل، ما عليك سوى النقر على زر Send File، وتحديد ملف ثم الانتظار حتى انتهاء النقل. مع بعض الملفات الأكبر حجمًا، هناك تأخير بسيط في تحديث شريط التقدم، وقد يبدو أن البرنامج تعطل بينما هو في الحقيقة يعمل. على الرغم من أنه يجب أن يكون قادرًا على نقل ملفات بأي حجم، إلا أنني اختبرته فقط مع ملفات يصل حجمها إلى 250mb، وقد تعامل معها بشكل ممتاز (على الرغم من أن شريط التقدم لم يتحدّث؛ عليك فقط انتظار مربع الرسالة الذي يفيد بنجاح النقل). يبلغ متوسط الإنتاجية حوالي 800kb/s.