昨天因為偷懶在家休息了一天,今天一早就到學校,結果卻收到老師的email,內容是老師要去參加微軟的軟體工程教師研討會,所以整天都不會在學校,要我準備好明天要Demo的投影片跟環境,這...真是太好了,我的paper又沒機會看了,投影片也沒時間修了,那我今天似乎沒需要來學校吧!同樣的情況也發生在曉晏身上,口試完後她一直擔心論文還要修改嗎?本來要找老師討論論文也噗空了,實在是太好了,變成沒什麼事情做,那就盯著學弟趕code囉!

  Security PM今天花了一整個下午,終於找到為什麼程式會當掉了,原因在於加密的演算法會將資料變長,加密必須已16 byte為最小單位,如果資料長度不能被16 byte整除,那就必須在結尾的地方補足(Padding),但是這個被加長的長度,是在QoS與PHY產生DL/UL Map之後才知道,於是PHY在解碼時,根據DL/UL Map所記錄的長度只解出部分資料,Security解密時就會出現使用到array以外的空間導致錯誤,這倒是很讓我意外,難不成他們都沒想過這問題嗎?或是WiMAX協定裡沒有提到這問題嗎?結果厚厚的規格書裡,似乎真的沒提到這個東西,這真是太神奇了...

   跟三位子計畫的PM確認後,開始討論解決方案,我提出兩個:第一是乾脆先加密再排程,不過QoS認為有違規格書上的架構,因為規格書很清楚地標示CS、QoS與Security的上下層關係,於是我提出第二個方案:先不加密,但可以先計算加密後的長度後,填入SDU中,讓QoS根據SDU記錄的資訊,告知PHY產生正確長度的DL/UL Map,想來想去,好像也沒有更好的方法,只等他們的老師卻認這不違背協定的精神即可開始動工修改。

  不過,這也表示Security依舊趕不上明天的Demo,於是請旻瑄幫我重新量測傳輸的數據,好讓我回家趕投影片,只能說,每年都會有一個子計畫一定要拖到最後才完工。

dbi1463 發表在 痞客邦 PIXNET 留言(0) 人氣()