দৈর্ঘ্যের জন্য দুঃখিত, এটি ধরণের প্রয়োজন।
ভূমিকা
আমি উইন্ডোজ ভিস্তা / 7 এর জন্য সি # 4.0 তে একটি দূরবর্তী ডেস্কটপ সফটওয়্যার তৈরি করছি (কেবল মজাদার জন্য)। আমি মৌলিক প্রতিবন্ধকতাগুলি পেরিয়েছি: আমার কাছে একটি শক্তিশালী ইউডিপি মেসেজিং সিস্টেম রয়েছে, তুলনামূলকভাবে পরিষ্কার প্রোগ্রাম ডিজাইন আছে, আমি একটি আয়না ড্রাইভার পেয়েছি (ডেমোফোর্স থেকে ফ্রি ডিএফমিগ্রেশন মিরর ড্রাইভার) প্রস্তুত এবং চলছে এবং আমি সবার জন্য নেট ট্র্যাভারসাল বাস্তবায়ন করেছি সিমেট্রিক নেটগুলি ব্যতীত NAT প্রকারগুলি (কর্পোরেট ফায়ারওয়াল পরিস্থিতিতে উপস্থিত)।
স্ক্রিন ট্রান্সফার / ভাগ করে নেওয়ার বিষয়ে, মিরর ড্রাইভারকে ধন্যবাদ, আমি স্বয়ংক্রিয়ভাবে পরিবর্তিত স্ক্রিন অঞ্চলগুলি সম্পর্কে অবহিত হয়েছি এবং আমি কেবল আয়না ড্রাইভারের নিজের পরিবর্তিত স্ক্রিন বিটম্যাপটিকে নিজের বিটম্যাপে মার্শাল করতে পারি। তারপরে আমি স্ক্রিন অঞ্চলটিকে পিএনজি হিসাবে সংকুচিত করে সার্ভার থেকে আমার ক্লায়েন্টের কাছে পাঠিয়ে দিই। জিনিসগুলি দেখতে বেশ সুন্দর দেখাচ্ছে, তবে এটি যথেষ্ট দ্রুত নয়। এটি ভিএনসির মতোই ধীর (বিটিডাব্লু, আমি ভিএনসি প্রোটোকল ব্যবহার করি না, কেবল একটি কাস্টম অপেশাদার প্রোটোকল)।
সবচেয়ে ধীরতম রিমোট ডেস্কটপ সফ্টওয়্যার থেকে দ্রুততম পর্যন্ত তালিকাটি সাধারণত সমস্ত ভিএনসি-এর মতো বাস্তবায়নে শুরু হয়, তারপরে মাইক্রোসফ্ট উইন্ডোজ রিমোট ডেস্কটপ ... এবং তারপরে ... টিমভিউয়ারে উঠে যায়। ক্রসলুপ, লগমিইন সম্পর্কে পুরোপুরি নিশ্চিত নয় - আমি সেগুলি ব্যবহার করি নি তবে টিমভিউয়ার অত্যন্ত দ্রুত। এটি বেশ আক্ষরিক অর্থেই জীবিত। আমি tree
কমান্ড প্রম্পটে একটি কমান্ড চালিয়েছি এবং এটি 20 এমএস বিলম্বের সাথে আপডেট হয়েছে। আমি আমার ল্যাপটপের চেয়ে ধীরে ধীরে কয়েক মিলিসেকেন্ডে ওয়েব ব্রাউজ করতে পারি। ভিজ্যুয়াল স্টুডিওতে উল্লম্বভাবে স্ক্রোলিং কোডটিতে 50 এমএস লেগ সময় রয়েছে। এই সমস্ত সম্পাদন করতে টিমভিউয়ারের স্ক্রিন-ট্রান্সফার সমাধানটি কতটা শক্তিশালী হতে হবে সে সম্পর্কে ভাবুন।
ভিএনসিগুলি পর্দার পরিবর্তন সনাক্ত করতে এবং পোষাক-ভিত্তিক হুক ব্যবহার করে এবং তাদের নিকৃষ্টতম তুলনায় তুলনামূলক বলের স্ক্রিন ক্যাপচার করে / তুলনা করে। সর্বোত্তমভাবে, তারা ডিএফমিরাজের মতো একটি মিরর ড্রাইভার ব্যবহার করে। আমি এই স্তরে আছি এবং তারা আরএফবি প্রোটোকল নামক কিছু ব্যবহার করে।
মাইক্রোসফ্ট উইন্ডোজ রিমোট ডেস্কটপ দৃশ্যত ভিএনসির চেয়ে এক ধাপ উপরে চলে গেছে। আমি শুনেছি, স্ট্যাকওভারফ্লো থেকে কোথাও থেকে, উইন্ডোজ রিমোট ডেস্কটপ স্ক্রিন বিটম্যাপগুলি প্রেরণ করে না, তবে প্রকৃত অঙ্কন কমান্ড। এটি বেশ উজ্জ্বল, কারণ এটি কেবল সহজ পাঠ্য প্রেরণ করতে পারে (এই আয়তক্ষেত্রটি এই স্থানাঙ্ক্যে আঁকুন এবং এই গ্রেডিয়েন্টের সাথে এটি রঙ করুন)! রিমোট ডেস্কটপ সত্যিই বেশ দ্রুত - এবং এটি বাড়ি থেকে কাজ করার মানক উপায়। এবং এটি আরডিপি প্রোটোকল নামক কিছু ব্যবহার করে।
এখন টিমভিউয়ার আমার কাছে সম্পূর্ণ রহস্য। স্পষ্টতই, তারা সংস্করণ 2 এর জন্য তাদের উত্স কোড প্রকাশ করেছে (ফেব্রুয়ারী ২০১২ অনুসারে টিমভিউয়ারটি সংস্করণ 7)) লোকেরা এটি পড়েছে এবং বলেছে যে সংস্করণ 2 অকেজো - এটি স্বয়ংক্রিয় NAT ট্র্যাভারসাল সহ ভিএনসি-র তুলনায় কেবল কয়েকটি উন্নতি।
তবে সংস্করণ 7 ... এটি এখন হাস্যকরভাবে দ্রুত। মানে, এটি আসলে উইন্ডোজ রিমোট ডেস্কটপের চেয়ে দ্রুত। আমি টিমভিউয়ারের সাথে ডাইরেক্টএক্স 3 ডি গেমগুলি প্রবাহিত করেছি (1 এফপিএসে, তবে উইন্ডোজ রিমোট ডেস্কটপ এমনকি ডাইরেক্টএক্সকে চালানোর অনুমতি দেয় না)।
যাইহোক, টিমভিউয়ার একটি আয়না ড্রাইভার ছাড়া এগুলি করে । একটি ইনস্টল করার বিকল্প রয়েছে এবং এটি কিছুটা দ্রুত গতিতে আসে।
প্রশ্নটি
আমার প্রশ্ন, টিমভিউয়ার এত দ্রুত?এটা অবশ্যই সম্ভব হবে না। যদি আপনি ২৪ বিট গভীরতায় 1920 বাই 1920 রেজোলিউশন পেয়ে থাকেন (16 বিট গভীরতা লক্ষণীয়ভাবে কুৎসিত হবে) তবে এখনও 6,220,800 বাইট কাঁচা। এমনকি লিবিজেপেইগ-টার্বো ব্যবহার করে (বৃহত্তর কর্পোরেশনগুলির দ্বারা ব্যবহৃত দ্রুততম জেপিজি সংক্ষেপণ গ্রন্থাগারগুলির মধ্যে একটি), এটি কম করে ৩০ কেবিতে সঙ্কলন করা যাক (আসুন চূড়ান্ত উদার হয়ে উঠুন), টিমভিউয়ার সার্ভারগুলির মাধ্যমে রুটে যেতে সময় লাগবে (টিমভিউয়ার কেবলমাত্র কর্পোরেট সিমমেট্রিক নেটগুলি বাইপাস দিয়ে ট্র্যাফিকের মধ্য দিয়ে যেতে পারেন) তাদের সার্ভার)। এবং সেই লিবিজপেগ-টার্বো সংকোচনে সংকোচন করতে সময় লাগবে। উচ্চ মানের মানের জেপিজি সংক্ষেপণ আমার জন্য পুরো 1920 বাই স্ক্রিনশটের জন্য 175 মিলিসেকেন্ড নেয় takes হোস্টের কম্পিউটারটি যদি একটি অ্যাটম প্রসেসর চালায় তবে সেই সংখ্যাটি উপরে যায়। আমি সহজেই বুঝতে পারি না কীভাবে টিমভিউয়ার তাদের স্ক্রিন ট্রান্সফারটিকে এত ভালভাবে অনুকূলিত করেছে। আবার, ছোট আকারের চিত্রগুলি অত্যন্ত সংকুচিত হতে পারে, কমপ্রেস করতে কমপক্ষে দশ মিমি সেকেন্ড নিন। বড় আকারের চিত্রগুলি সংকোচনে সময় নেয় না, তবে এটি পেতে দীর্ঘ সময় নেয়। কোনওভাবে, টিমভিউয়ার প্রতি সেকেন্ডে প্রায় 20-25 ফ্রেম পেতে এই পুরো প্রক্রিয়াটি সম্পূর্ণ করে। আমি একটি নেটওয়ার্ক মনিটর ব্যবহার করেছি, এবং টিমভিউয়ার এখনও 500 কেবিপিএস এবং 1 এমবিপিএস (এই ট্রান্সফার রেটে কয়েক সেকেন্ডের জন্য ভিএনসি সফ্টওয়্যার পিছিয়ে) গতিতে অবিচ্ছিন্ন। আমার সময়tree
কমান্ড প্রম্পট পরীক্ষা, টিমভিউয়ার 1 এমবিপিএস হারে ইনবাউন্ড ডেটা পাচ্ছিল এবং এখনও 5-6 এফপিএস চলছে। ভিএনসি এবং রিমোট ডেস্কটপ এটি করে না। তা কিভাবে?
উত্তরগুলি কিছুটা জটিল এবং জটিল হবে, সুতরাং দয়া করে আপনার 0.02 ডলার পোস্ট করবেন না যদি আপনি কেবল এটিই বলে যাচ্ছেন যে তারা টিসিপির পরিবর্তে ইউডিপি ব্যবহার করে (আপনি কি বিশ্বাস করেন যে তারা সত্যিকার অর্থেই সফলভাবে টিসিপি ব্যবহার করেন)।
আমি আশা করছি স্ট্যাকওভারফ্লোতে এখানে কোথাও একটি টিমভিউয়ার বিকাশকারী রয়েছে।
সম্ভাব্য উত্তরসমূহ
লোকেরা উত্তর দিলে এটি আপডেট করবে।
- আমার চিন্তাভাবনাগুলি হ'ল, প্রথমত, টিমভিউয়ারের খুব ভাল নেটওয়ার্ক নিয়ন্ত্রণ রয়েছে। উদাহরণস্বরূপ, তারা বড় প্যাকেটগুলি কেবল এমটিইউ আকারের নীচে বিভক্ত করে এবং কখনও ট্রিপ নষ্ট করে না। অত্যন্ত দ্রুত এক্সওর চিত্র তুলনা সহ স্ক্রিন পরিবর্তনগুলি সনাক্ত করতে তাদের কাছে সম্ভবত সমস্ত ধরণের অভিনব হুক রয়েছে।